Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Jeovane Carvalho

Acessar um array pegando seu índice dentro de uma classe através de outra página no PHP

Recommended Posts

Olá pessoal, estou precisando de um help !

 

Pois eu tenho uma classe assim:

 

DadosComboClasse.php

 

	
	class  DadosComboCidades {
	private $conecta_banco;
	
	public function __construct(){
	$this->conecta_banco= new Conexao();
	$this->conecta_banco->Conectar();
	}	
	public $array = array();
	public $imoveis_tipo;
	public $cidade;
	public $bairro;
	public $bairro_id2;
	public $idcidade;	
	public $negocios;
	public $qtd;
	public $bairro_id;
	public $id_cidade;
	public $id_tipo;
	public $id_bairro;
	public $nome_empresa_2;
	public $nome_empresa_3;
	public $nome_empresa_4;
	public $nome_empresa_5;
	public $titulo_cadastro;
	public $creci;
	public $facebook;
	public $twitter;
	public $linha_b;
	public $sloga;
	public $site;
	public $sqlT_1;
	public $sqlT_2;
	public $sqlT_3;
	public $sqlT_4;
	public $row;
	public $id='1';
	function BuscarCidades(){
	$result=$this->conecta_banco->banco; 

	$pega_cidade=new ComboCidades();=> instancio os ids ou arrays quando são requisitados tipo assim : finalidade ID:1 Tipo ID:3,9 (array)  
	$pega_cidade->PegarCidadeId();
	

	$ativo='1';


ARRAYS ABAIXO:

	$this->id_negocio=$pega_cidade->id_negocio;
	$this->id_tipo=$this->id_cidade=$pega_cidade->id_tipo;
	$this->id_cidade=$pega_cidade->id_cidade;

Acima eu pego os dados do array vindo da pagina combo_cidades.php
	
	if($pega_cidade->id_negocio):
	$negocio_array = explode(",",$pega_cidade->id_negocio);
	if($pega_cidade->id_tipo):
	$tipos_array = explode(",", $pega_cidade->id_tipo);
	if($pega_cidade->id_cidade):
	$cidades_array = explode(",", $pega_cidade->id_cidade);
	
	foreach($negocio_array as $negocio):
	foreach($tipos_array as $tipos):
	foreach($cidades_array as $cidades):

	$sqlT_1 = $result->prepare("SELECT i.id,t.tipo_nome,c.cidade,b.bairro,i.ativo FROM imoveis i LEFT JOIN imoveis_tipo t ON (t.id = i.id_tipo_imovel) LEFT JOIN 		
	cidades c ON (c.id = i.id_cidade)LEFT JOIN bairros b ON (b.id = i.bairro) WHERE i.id_tipo_imovel IN ('".$tipos."') AND i.id_cidade IN ('".$cidades."') AND 	
	i.ativo=?  ORDER BY i.bairro DESC");
	$sqlT_1->bind_param('s',$ativo);
	$sqlT_1->execute();
	$this->sqlT_1=$sqlT_1->get_result();
	
Acima com get_result eu gero os dados que preciso do array  
	
	
abaixo são outras chamadas do sql que vou implementar na solução acima

	$sqlT_2=$result->prepare("SELECT id, bairro,ativo FROM bairros WHERE id AND ativo=? ORDER BY bairro");
	$sqlT_2->bind_param('s',$ativo);
	$sqlT_2->execute();
	$this->sqlT_2=$sqlT_2->get_result();
	
	"'%".$negocio."%'";
	$where = " i.ativo =? ";
	
	if( $negocio)  {
	$where .="AND i.id_negocio_tipo LIKE ?";
	}if( $tipos )  {
	$where .=" AND i.id_tipo_imovel IN ('".$tipos."')";
	}
	if( $cidades ) {
	$where .=" AND i.id_cidade IN ('".$cidades."')";
	}
	if($this->bairro_id2) {
	$where .=" AND i.bairro IN ('".$this->bairro_id2."')";
	}
	
	$sqlT_3 = $result->prepare("SELECT i.id,i.ativo,n.tipo,b.bairro,t.tipo_nome,c.cidade,i.id_negocio_tipo, COUNT(b.bairro) AS Qtd FROM  imoveis i 
	LEFT JOIN negocio_tipo n ON (n.id= i.id_negocio_tipo) 
	LEFT JOIN imoveis_tipo t ON (t.id = i.id_tipo_imovel) 
	LEFT JOIN cidades c ON (c.id = i.id_cidade)
	LEFT JOIN bairros b ON (b.id = i.bairro) 
	WHERE ".$where." GROUP BY b.bairro HAVING COUNT( b.bairro)  > 0 ORDER BY b.bairro ");
	//EXECUTA A QUERY  
	$conta=$sqlT_3->num_rows();
	$sqlT_3->bind_param('ss',$ativo,$negocio);
	$sqlT_3->execute();
	$this->sqlT_3=$sqlT_3->get_result();
	
	endforeach;
	endforeach;
	endforeach;
	
	endif;
	endif;
	endif;	
	
	}
	}

 

 

Abaixo a classe combocidades.php

 

 require_once("tags2.php"); 
    //RECEBE PARÃMETRO 
    class ComboCidades{
    private $conecta_banco;
    
    public function __construct(){
    $this->conecta_banco= new Conexao();
    $this->conecta_banco->Conectar();
    }
    
    public $id_negocio;
    public $id_tipo;
    public $busca_cidade;
    public $id_cidade;
    public function PegarCidadeId(){
    function filter( $str ){
    return addslashes( $str );
    }
    function getPost( $key ){
    return isset( $_GET[ $key ] ) ? filter( $_GET[ $key ] ) : null;
    }
    
    
    $this->id_negocio = getPost('id_negocio');
    $this->id_tipo = getPost('id_tipo');
    $this->id_cidade=getPost('id_cidade');
    
    }
    }
	 class ExibirBairros extends DadosComboCidades{
    
    public function Mostrar(){
    extract( $_GET, EXTR_OVERWRITE);
    $busca_bairro=new DadosComboCidades();
    $busca_bairro->BuscarCidades(); 
    $busca_bairro->id_cidade;
    if($busca_bairro->id_cidade==0):
    echo "<div class='atencao'></div><div class='atencao_text'>Selecione uma Cidade para pesquisar por Bairros !</div> "."<br />";
    endif;
    
    echo "<div class='sel'></div>"."<br />";
    /* MONTA CRITERIOS DE BUSCA */             
    //QUERY  
    
   

    echo '<br /><div class="botao-modal"><button type="button"  class="botao_marcar" title="Todos" id="todos" onclick="marcardesmarcar();">Selecionar Todos</button>	
	</div>';



    Aqui onde chamo os array já convertidos pelo foreach na classe DadosComboCidades.php

    echo'<br /><br /><div style=" font-weight:bold; margin-left:30px;">'.$busca_bairro->imoveis_tipo.' (s) </div>';
    echo'<br /><br /><div style=" font-weight:bold; margin-left:30px;">'.$busca_bairro->cidade.'</div>';
    echo'<div class="form_modal"><form name="form1">'.'<br /><br />';
    
    
      
      
    echo '<input type="checkbox" id="c'.$bairro.'" class="marcar" value="'.$bairro_id.'" name="bairro[]"/><label 
    for="c'.$bairro_id.'"><span></span></label>  '.$bairro.' - '.$cidade.' ('.$qtd.') <br />';
    
    //FECHA IF (row)                                               
    //PRINTA O RESULTADO  
    

    
    if($bairro_id):
    echo FALSE;
    else:
    echo "<div class='atencao'></div><div class='atencao_text'>Não existem imóveis para essa Busca !</div> "."<br />";
    
    
    echo'</form></div></b><br />';
    endif;
    }
    }
Abaixo onde istancio e chamo a classe DadosComboCidades
    $f=new ExibirBairros();
    $f->Mostrar();

RESUMINDO:

 

O que acontece é que eu não consigo pegar o array no seu índice, ou seja , por exemplo se o id tipo for ID: 1 rola beleza a busca  e a impressão dos dados mas se eu for buscar 2 informações no mesmo id tipo , assim => ID: array(5,9) , na outra página só consigo pegar o último id em vez de buscar 5,9 só busca o 9, por eu estar acessando o array de outra página , e pelo que entendi , acessando o array de outra página ele só percorre o último em vez do índice.

Mas se eu jogar todo código dentro da classe ai roda beleza , mas não quero misturar objeto com html (isso é má prática na programação), por isso estou remodelando meu código em POO

Se alguém tiver uma solução eu agradeço  .  :)

Compartilhar este post


Link para o post
Compartilhar em outros sites

  • Conteúdo Similar

    • Por violin101
      Caros amigos, saudações.
       
      Por favor, poderiam me ajudar.

      Estou com a seguinte dúvida:
      --> como faço para para implementar o input código do produto, para quando o usuário digitar o ID o sistema espera de 1s a 2s, sem ter que pressionar a tecla ENTER.

      exemplo:
      código   ----   descrição
           1       -----   produto_A
       
      Grato,
       
      Cesar
    • Por violin101
      Caros amigos, saudações.
       
      Humildemente peço desculpa por postar uma dúvida que tenho.

      Preciso salvar no MySql, os seguinte Registro:

      1 - Principal
      ====> minha dúvida começa aqui
      ==========> como faço para o Sistema Contar Automaticamente o que estiver despois do 1.____?
      1.01 - Matriz
      1.01.0001 - Estoque
      1.01.0002 - Oficina
      etc

      2 - Secundário
      2.01 - Loja_1
      2.01.0001 - Caixa
      2.01.0002 - Recepção
      etc
       
      Resumindo seria como se fosse um Cadastro de PLANO de CONTAS CONTÁBEIL.

      Grato,


      Cesar









       
    • Por violin101
      Caros amigos, saudações.

      Por favor, me perdoa em recorrer a orientação dos amigos.

      Preciso fazer um Relatório onde o usuário pode Gerar uma Lista com prazo para vencimento de: 15 / 20/ 30 dias da data atual.

      Tem como montar uma SQL para o sistema fazer uma busca no MySql por período ou dias próximo ao vencimento ?

      Tentei fazer assim, mas o SQL me traz tudo:
      $query = "SELECT faturamento.*, DATE_ADD(faturamento.dataVencimento, INTERVAL 30 DAY), fornecedor.* FROM faturamento INNER JOIN fornecedor ON fornecedor.idfornecedor = faturamento.id_fornecedor WHERE faturamento.statusFatur = 1 ORDER BY faturamento.idFaturamento $ordenar ";  
      Grato,
       
      Cesar
       
       
       
       
    • Por violin101
      Caros amigos, saudações
       
      Por favor, me perdoa em recorrer a orientação dos amigos, tenho uma dúvida.
       
      Gostaria de uma rotina onde o Sistema possa acusar para o usuário antes dos 30 dias, grifar na Tabela o aviso de vencimento próximo, por exemplo:
       
      Data Atual: 15/11/2024
                                           Vencimento
      Fornecedor.....................Data.....................Valor
      Fornecedor_1...........01/12/2024..........R$ 120,00 <== grifar a linha de Laranja
      Fornecedor_1...........01/01/2025..........R$ 130,00
      Fornecedor_2...........15/12/2024..........R$ 200,00 <== grifar a linha de Amarelo
      Fornecedor_2...........15/01/2025..........R$ 230,00
      Fornecedor_3...........20/12/2024..........R$ 150,00
       
      Alguém tem alguma dica ou leitura sobre este assunto ?

      Grato,
       
      Cesar
    • Por violin101
      Caros amigos, saudações.

      Por favor, me perdoa em recorrer a ajuda dos amigos, mas preciso entender uma processo que não estou conseguindo sucesso.

      Como mencionado no Título estou escrevendo um Sistema Web para Gerenciamento de Empresa.
       
      Minha dúvida, que preciso muito entender:
      - preciso agora escrever a Rotina para Emissão de NFe e essa parte não estou conseguindo.
       
      tenho assistido alguns vídeos e leituras, mas não estou conseguindo sucesso, já fiz toda as importações das LIB da NFePhp conforme orientação.

      Preciso de ajuda.

      Algum dos amigos tem conhecimento de algum passo-a-passo explicando a criação dessa rotina ?

      tenho visto alguns vídeos com LARAVEL, mas quando tento utilizar e converter para PHP+Codeiginter, dá uma fila de erros que não entendo, mesmo informando as lib necessárias.

      Alguns do amigo tem algum vídeo, leitura explicando essa parte ?

      Grato,

      Cesar.
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.