Jump to content
Rzorr

Url, Busca

Recommended Posts

Bom dia,

        eu tenho um  site de imóveis, sou corretor, ele está com alguns problemas na URL, comprei esse script e venho fazendo algumas alterações nele, sei o básico, cadastrar, deletar, buscar, update, mas o que acontece esse site foi construido com MVC e confesso parei de estudar PHP faz muito tempo, e não entendo nada de MVC, abaixo o código da busca e como forma o link é montado.

    No site o link fica assim: /imoveis/lista/referencia/referencia/categoria/comprar/tipo/tipo/cidade/Camboriú/bairro/bairro#busca nesse exemplo fiz uma busca pela cidade!

   Se clico no menu em vendas o link fica assim: /imoveis/lista/referencia/referencia/categoria/comprar/tipo/tipo/cidade/cidade/bairro/bairro#busca

pessoal obrigado pela disposição em ajudar, eu to tentando resolver faz dias, mas não consigo entender a a forma como é construido.

 

<?php
class busca extends controller {
	
	public function init(){
	}
	
	public function inicial(){
		
	     $referencia = $this->post('referencia');
	 	 $categoria = $this->post('categoria');
		 $tipo = $this->post('tipo');
	     $cidade = $this->post('cidade');
		 $bairro = $this->post('bairro');
		
		if($referencia){
			$cidade = "cidade";
			$bairro = "bairro";
			$tipo = "tipo";
			$categoria = "categoria";
		} else {
			$referencia = 'referencia';
			if(!$categoria){
				$categoria = "categoria";
			}
			if(!$tipo){
				$tipo = "tipo";
			}
			if(!$cidade){
				$cidade = "cidade";
			}
			if(!$bairro){
				$bairro = "bairro";
			}
		}
		
		$endereco = DOMINIO."imoveis/lista/referencia/$referencia/categoria/$categoria/tipo/$tipo/cidade/$cidade/bairro/$bairro#busca";

		$this->irpara("$endereco");
	}

 

Share this post


Link to post
Share on other sites

Alguém consegue ajudar, não quero que faça o código para mim,  preciso de uma orientação, me parece que as buscas são feitas através de post, mas também através do get. se alguem puder ajudar!

Share this post


Link to post
Share on other sites

Bom dia Guilherme Luiz, eu to tentando mudar a forma como é formado as urls, por exemplo hoje se clico no menu em vendas  a URL é essa --> https://www.rafaelbatistaimoveis.com.br/imoveis/lista/referencia/referencia/categoria/comprar/tipo/tipo/cidade/cidade/bairro/bairro#busca

Ele busca pela categoria certo que é comprar, mas aparece essas palavras em duplicidade, já editei o script e tirei essas palavras ai não funciona nada.

outra dificuldade é quando tento fazer uma busca por exemplo por apartamento, aparece o id da categoria apartamento https://www.rafaelbatistaimoveis.com.br/imoveis/lista/referencia/referencia/categoria/comprar/tipo/3697/cidade/cidade/bairro/bairro#busca

Porém se eu tiro as palavras em duplicidade já não funciona nada.

 

estou tentando entender qual foi a lógica da busca que foi executada, mas confesso que não compreendi ainda. Nos menus é passados via get, já mudei as forma mas ai fica tela branca, e na busca é passado via POST, se mudo só da erro!

 

Obrigado por responder.

Em 06/05/2020 at 12:47, Guilherme Luiz disse:

Não ficou claro qual a sua dúvida.


Ao que me parece esse script foi feito sob o framework Laravel.

 

Se você começar a "dissecar" as classes e dar uma olhada na documentação do framework, com certeza você terá uma clareza maior do que foi feito nele

 

 

 

Agora, Rzorr disse:
Em 06/05/2020 at 12:47, Guilherme Luiz disse:

Não ficou claro qual a sua dúvida.


Ao que me parece esse script foi feito sob o framework Laravel.

 

Se você começar a "dissecar" as classes e dar uma olhada na documentação do framework, com certeza você terá uma clareza maior do que foi feito nele

 

 

 

 

Bom dia Guilherme Luiz, eu to tentando mudar a forma como é formado as urls, por exemplo hoje se clico no menu em vendas  a URL é essa --> https://www.rafaelbatistaimoveis.com.br/imoveis/lista/referencia/referencia/categoria/comprar/tipo/tipo/cidade/cidade/bairro/bairro#busca

Ele busca pela categoria certo que é comprar, mas aparece essas palavras em duplicidade, já editei o script e tirei essas palavras ai não funciona nada.

outra dificuldade é quando tento fazer uma busca por exemplo por apartamento, aparece o id da categoria apartamento https://www.rafaelbatistaimoveis.com.br/imoveis/lista/referencia/referencia/categoria/comprar/tipo/3697/cidade/cidade/bairro/bairro#busca

Porém se eu tiro as palavras em duplicidade já não funciona nada.

 

estou tentando entender qual foi a lógica da busca que foi executada, mas confesso que não compreendi ainda. Nos menus é passados via get, já mudei as forma mas ai fica tela branca, e na busca é passado via POST, se mudo só da erro!

 

Obrigado por responder.

Share this post


Link to post
Share on other sites
Em 06/05/2020 at 12:47, Guilherme Luiz disse:

Não ficou claro qual a sua dúvida.


Ao que me parece esse script foi feito sob o framework Laravel.

 

Se você começar a "dissecar" as classes e dar uma olhada na documentação do framework, com certeza você terá uma clareza maior do que foi feito nele

 

 

Seguindo seu conselho, comecei a rever todo código novamente, e acredito que na busca por post o cara que escreveu o código fez o seguinte, montou uma url que recebe todos os dados e faz a busca por get e da o retorno, então agora estou mexendo neste pedaço de código para tentar fazer montar a url da forma que eu preciso, não tive sucesso ainda mas já é um começo.

 

public function inicial(){
		
		$referencia = $this->post('referencia');
		$categoria = $this->post('categoria');
		$tipo = $this->post('tipo');
		$cidade = $this->post('cidade');
		$bairro = $this->post('bairro');
		
		if($referencia){
			$cidade = $cidade;
			$bairro = $bairro;
			$tipo = $tipo;
			$categoria = $categoria;
		} else {
			$referencia = $referencia;
			if(!$categoria){
				$categoria = "";
			}
			if(!$tipo){
				$tipo = "";
			}
			if(!$cidade){
				$cidade = "";
			}
			if(!$bairro){
				$bairro = "";
			}
		}
		
		$endereco = DOMINIO."imoveis/lista/$referencia/$categoria/$tipo/$cidade/$bairro";

		$this->irpara("$endereco");

 

Share this post


Link to post
Share on other sites
Em 15/05/2020 at 13:36, Rzorr disse:

Seguindo seu conselho, comecei a rever todo código novamente, e acredito que na busca por post o cara que escreveu o código fez o seguinte, montou uma url que recebe todos os dados e faz a busca por get e da o retorno, então agora estou mexendo neste pedaço de código para tentar fazer montar a url da forma que eu preciso, não tive sucesso ainda mas já é um começo.

 


public function inicial(){
		
		$referencia = $this->post('referencia');
		$categoria = $this->post('categoria');
		$tipo = $this->post('tipo');
		$cidade = $this->post('cidade');
		$bairro = $this->post('bairro');
		
		if($referencia){
			$cidade = $cidade;
			$bairro = $bairro;
			$tipo = $tipo;
			$categoria = $categoria;
		} else {
			$referencia = $referencia;
			if(!$categoria){
				$categoria = "";
			}
			if(!$tipo){
				$tipo = "";
			}
			if(!$cidade){
				$cidade = "";
			}
			if(!$bairro){
				$bairro = "";
			}
		}
		
		$endereco = DOMINIO."imoveis/lista/$referencia/$categoria/$tipo/$cidade/$bairro";

		$this->irpara("$endereco");

 

Não desisti ainda estou tentando, fiz progresso com relação a busca por código, entendi também que foi feito 2 controllers. um chamado controller_imoveis.php  e outro controller_busca.php, o que ocorre quando se faz uma busca é feito uma busca no controller_busca.php, que aciona uma url que na pagina controller_imoveis.php. Pois bem na busca por código fiz o seguinte.

 

fiz um IF pra ver se tava preenchido

if($referencia){
			//Faz a busca conforme vem os dados do controle_imoveis.php
             $endereco = DOMINIO."imoveis/lista/referencia/$referencia";

			$this->irpara("$endereco");
}

Na página controller_busca.php.

 

Já na página controller_imoveis.php fiz outro if que aciona a busca.

 

// Busca por referencia
		if($url_referencia){
			$query = "SELECT * FROM imoveis WHERE ref='$url_referencia'";
		}

isso fez funcionou fez a busca por referencia e a url ficou. 

 

/imoveis/lista/referencia/1070, não é ainda o que eu quero mas já é um progresso.

 

Tentei fazer o mesmo com categoria, seguindo a logica de verificar se está vindo preenchida, mas ai aparece a mensagem 

Notice: Trying to get property of non-object in C:\wamp\www\nova_imobiliaria\upload\_controllers\controller_imoveis.php on line 135

 

e não faz a busca, continuo tentando, se tiver alguem para ajudar!

 

por enquanto obrigado.

Share this post


Link to post
Share on other sites
Em 06/05/2020 at 12:47, Guilherme Luiz disse:

Não ficou claro qual a sua dúvida.


Ao que me parece esse script foi feito sob o framework Laravel.

 

Se você começar a "dissecar" as classes e dar uma olhada na documentação do framework, com certeza você terá uma clareza maior do que foi feito nele

 

 

Boa noite, sigo tentando, agora estou na seguinte situação entendi como foi feito, mas não to conseguindo fazer a busca funcionar até determinado IF funciona depois não funciona mais .

public function inicial(){
		
		$referencia = $this->post('referencia');
		var_dump($categoria = $this->post('categoria'));
		$tipo = $this->post('tipo');
		$cidade = $this->post('cidade');
		$bairro = $this->post('bairro');
		
		if($referencia){
			//Faz a busca conforme vem os dados do controle_imoveis.php
             $endereco = DOMINIO."imoveis/lista/referencia/$referencia";
            $this->irpara("$endereco");      
		}elseif($categoria AND $tipo AND $cidade AND $bairro){
      $endereco = DOMINIO."imoveis/lista/categoria/$categoria/tipo/$tipo/cidade/$cidade/bairro/$bairro";
			$this->irpara("$endereco");

/// Até aqui funciona depois disso já não funciona mais 


		}elseif($categoria AND $tipo AND $cidade){
            $endereco = DOMINIO."imoveis/lista/categoria/$categoria/tipo/$tipo/cidade/$cidade";
			$this->irpara("$endereco");	
		}elseif($tipo AND $categoria){
            $endereco = DOMINIO."imoveis/lista/categoria/$categoria/tipo/$tipo";
			$this->irpara("$endereco");	
		}elseif($tipo){
            $endereco = DOMINIO."imoveis/lista/tipo/$tipo/bairro/$bairro";
			$this->irpara("$endereco");	
		}elseif($cidade){
            $endereco = DOMINIO."imoveis/lista/cidade/$cidade";
			$this->irpara("$endereco");	
		}elseif($tipo){
            $endereco = DOMINIO."imoveis/lista/tipo/$tipo";
			$this->irpara("$endereco");	
		}elseif($categoria){
            $endereco = DOMINIO."imoveis/lista/categoria/$categoria";
			$this->irpara("$endereco");	
		}
		
	}

da url montada vem para cá e faz a busca

// Busca por referencia
		if($url_referencia){
			$query = "SELECT * FROM imoveis WHERE ref='$url_referencia'";
			//busca por categoria, tipo, cidade e bairo
		}elseif($url_categoria AND $url_tipo AND $url_cidade AND $url_bairro){
        	$query = "SELECT * FROM imoveis WHERE categoria_id='$categoria_id' AND  tipo_id='$url_tipo' AND cidade='$url_cidade' AND bairro='$url_bairro'";
        	//busca por categoria, tipo, cidade 
        }elseif($url_categoria AND $url_tipo AND $url_cidade){
			$query = "SELECT * FROM imoveis WHERE categoria_id='$categoria_id' AND  tipo_id='$url_tipo' AND cidade='$url_cidade'";
			//busca por categoria, tipo
		}elseif($url_categoria AND $url_tipo){
			$query = "SELECT * FROM imoveis WHERE categoria_id='$categoria_id' AND  tipo_id='$url_tipo'";
		   //busca por cidade
		}elseif($url_cidade){
			$query = "SELECT * FROM imoveis WHERE cidade='$url_cidade'";
		  //busca por tipo e Cidade
		}elseif($url_tipo AND $url_cidade){
            $query = "SELECT * FROM imoveis WHERE tipo_id='$url_tipo' AND cidade='$url_cidade'";
		 //busca por tipo e bairro
		 }elseif($url_tipo AND $url_bairro){
			$query = "SELECT * FROM imoveis WHERE tipo_id='$url_tipo' AND bairro='$url_bairro'";
		  //busca por tipo
		}elseif($url_tipo){
			$query = "SELECT * FROM imoveis WHERE tipo_id='$url_tipo'";
		}elseif($url_bairro){
			//busca por bairro
			$query = "SELECT * FROM imoveis WHERE bairro='$url_bairro'";
		}elseif($url_categoria){
			//busca por categoria
			$query = "SELECT * FROM imoveis WHERE categoria_id='$categoria_id'";
		}
		///////////////////////

se aguem puder dar uma luz, uma ajuda obriga, sigo tentando e postando. obrigado.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By Joob
      Boas Malta,
       
      Não sei porquê que não estou a conseguir remover os ficheiros após minutos..
      Por exemplo ele vai buscar o deleteshared_links e apaga a partilha feita após o tempo colocado, mas no deletezips já não apaga.
      Supostamente ele vai buscar os ficheiros da pasta zip e deveria apagar.
       
      Resolvido
       
      Obrigado :)
    • By adamo marinho
      Estou tentando achar numeros iguais dentro de arrays criadas usando a função array_intersect, porem para facilitar o meu projeto, precisaria incluir variaveis dentro das arrays, alguem pode ajudar por favor?

      <?php $v1_1 = 1; $v1_2 = 2; $v1_3 = 3; $v1_4 = 4; $v1_5 = 5; $v1 = array($v1_1, $v1_2, $v1_3, $v1_4, $v1_5); $v2_1 = 6; $v2_2 = 7; $v2_3 = 8; $v2_4 = 9; $v2_5 = 10; $v2 = array($v2_1, $v2_2, $v2_3, $v2_4, $v2_5); $v3_1 = 10; $v3_2 = 9; $v3_3 = 8; $v3_4 = 7; $v3_5 = 6; $v3 = array($v3_1, $v3_2, $v3_3, $v3_4, $v3_5); $v4_1 = 5; $v4_2 = 4; $v4_3 = 3; $v4_4 = 2; $v4_5 = 1; $v4 = array($v4_1, $v4_2, $v4_3, $v4_4, $v4_5); $resultado = array_intersect($v1, $v2, $v3, $v4 ); var_dump($resultado); ?>
    • By babylon
      Ola amigos,
       
      Estava querendo criar algo para meu site, um botao igual do site abaixo para calcular formas de pagamento "ver formas de pagamento":
       
      https://www.chipart.com.br/pc-gamer-level-one-black-amd-3400g
       
      Segue imagem em anexo.
       
      Alguem poderia me ajudar se tem algum script algo pronto ou que ajude para abrir pop up modal?
       
      Obrigado a todos.
       
       

    • By srs1999_
      Tópico
       
      Site em Código
      Sobre desenvolver sites sem o wordpress que ja tá tudo ali feito que seja um site dinâmico ou seja com banco de dados , APIs de pagamento, Painel para o usuário ,  além de todas  as funções que tem no wordpress e você teria propriedade pra explicar sobre detalhes mais técnicos da produção onde no wordpress só quem entende de progrqmação explicaria algum detalhe técnico 
      Então usando basicamente : 
      FRONT END 
      HTML 
       CSS 
      JAVASCRIPT 
      ALGUMA DE BACKEND COMO PHP E BANCO DE DADOS
      Pode se criar sites/sistemas tão bons ou melhores que no wordpress
       
      Fato : o proprio wordpress é feito em php e ate o proprio facebook tbm em php
      Fato 2 :  cerca de 70% dos sites são feitos em Wordpress
       
      Acho esse lance de procurar o caminho mais fácil limita muito a pessoa por exemplo é facil editar imagens no paint bem intuitivo , agora para editar no photoshop com muitas outras possibilidades  acaba sendo importante ir explorando essa elaboração mais difícil  com um mesmo objetivo. No caso do exemplo ( editar imagens )  
       
      Reflexão:
      Vale a pena se dedicar a trabalhar com a ferramenta Wordpress apenas por ser um meio rápido de ganhar dinheiro ?
      Ou trabalhar sem wordpress  usando tudo que exigido pra criar coisas originais mais que não seria tão rápido a produção. Mas creio que além dos sites feitos também geraria a possibildade de vender o sistema web criado para o cliente personalizar .
       
      Você Desenvolveria de que forma :
       Wordpress apenas ?
       
      Conhecer programação pra trabalhar 
      com  Wordpress ?
       
      Produzir tudo só com programação totalmente dinâmico sem  Wordpress?
    • By violin101
      Caros amigos
       
      saudações...
       
      Peço desculpa, se postei minha dúvida em local errado.
       
      Tenho um formulário onde valido todos os campos e após clicar no BUTTON para adicionar, tenho uma função que muda o TITLE e deixa desabilitado.
       
      O problema é o seguinte:
      - caso algum campo fica em branco, após validar o formulário e mudar o BUTTON, não consigo depois de preenchido HABILITAR novamente o button.
       
      Observação:
      1) após preencher o campo que ficou em branco, como faço para HABILITAR o button novamente e mudar o title do button ?
       
       
      na VIEW está assim:
      <form action="<?php echo current_url(); ?>" id="frmEstoque" method="post" onsubmit="this.btn_adc.disabled=true;" > <div class="card-body"> <div class="row"> <!---Todos os campos do Formulário---> </div> </div> <div class="card-footer" style="text-align:center;"> <input type="hidden" id="idCli" name="idCli" value="<?php echo $cliente->idClientes; ?>" /> <a href="<?php echo base_url() ?>admin/estoque" id="" class="btn btn-danger"><i class="fa fa-undo"></i> Voltar</a> &nbsp; <button type="submit" id="btn_adc" name="btn_adc" class="btn btn-primary">Adicionar</button> </div> </form>  
      na JavaScript está assim:
      <script> //Função para Mudar o VALUE do Button Adicionar Veículo document.getElementById("btn_adc").addEventListener("click",function(){ this.innerHTML = this.value++ || 'Aguarde...'; },false); </script> /* Observação: 1) como removo a função acima, após validar o formulário e esse encontrar algum campo vazio. 2) após preencher o campo que ficou em branco, HABILITAR o button novamente. */ <script type="text/javascript"> $(document).ready(function(){ //Função para Validar Formulário $('#frmEstoque').validate({ rules :{ etq_categcars:{ required: true}, etq_destaq:{ required: true}, etq_status:{ required: true} }, messages:{ etq_categcars :{ required: '<span style="color:#ff0000;">Campo Requerido</span>'}, etq_destaq :{ required: '<span style="color:#ff0000;">Campo Requerido</span>'}, etq_status :{ required: '<span style="color:#ff0000;">Campo Requerido</span>'} }, errorClass: "help-inline", errorElement: "span", highlight:function(element, errorClass, validClass) { $(element).parents('.form-group').addClass('error'); }, unhighlight: function(element, errorClass, validClass) { $(element).parents('.form-group').removeClass('error'); $(element).parents('.form-group').addClass('success'); } }); //Status dos Botões ADICIONAR - iniciar como desabilitado. document.getElementById("btn_adc").disabled = true; }); function statusButton(){ //valida conteudo do input if ($("input[name=etq_vlrcpr]").val() != 0 && $("input[name=etq_vlrvda]").val() != 0) { //habilita o botão document.getElementById("btn_adc").disabled = false; } else { //desabilita o botão se o conteúdo do input ficar em branco document.getElementById("btn_adc").disabled = true; } } </script>  
      Grato,
       
      Cesar
       
       
       
       
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.