Ir para conteúdo

POWERED BY:

Arquivado

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

Danny89

Como criar pesquisa com filtro?

Recommended Posts

Oi pessoal, gostaria de criar um campo de pesquisa personalizado, onde o usuário pudesse receber os dados de acordo com a sua seleção. Ex: Procurar usuários com idade até 27 anos, Rio de Janeiro e formado em Engenharia. Após submeter a busca, retornaria para o usuário apenas pessoas com essas caracterísitcas.

Qual a query eu poderia usar para essa consulta?

Compartilhar este post


Link para o post
Compartilhar em outros sites
"SELECT idade,cidade,graduacao FROM tabela WHERE idade <= 27 AND cidade = rio de janeiro AND graduacao = Engenharia"

é só substituir as condições por suas variáveis.

Compartilhar este post


Link para o post
Compartilhar em outros sites
if(isset($_POST['btnFiltro']))
{
	$filtro = $_POST['txtFiltro'];
}
$mysql_query = "SELECT * from tbl_upload WHERE nome_musica LIKE '%" .$filtro."%' OR artista LIKE '%".$filtro."%'";

php

<input type="text" class="txtFiltro" name="txtFiltro" autocomplete="off">
<input type="submit" name="btnFiltro" class="btnFiltro" value="BUSCAR"/>

html

 

para fazer filtro com um parametro só tira aquele OR arista LIKE...

 

bem simples

 

 

divirta-se

Compartilhar este post


Link para o post
Compartilhar em outros sites
if(isset($_POST['btnFiltro']))
{
	$filtro = $_POST['txtFiltro'];
}
$mysql_query = "SELECT * from tbl_upload WHERE nome_musica LIKE '%" .$filtro."%' OR artista LIKE '%".$filtro."%'";

php

<input type="text" class="txtFiltro" name="txtFiltro" autocomplete="off">
<input type="submit" name="btnFiltro" class="btnFiltro" value="BUSCAR"/>

html

 

para fazer filtro com um parametro só tira aquele OR arista LIKE...

 

bem simples

 

 

divirta-se

 

 

Não precisa usar ajax não? Eu jurava que precisaria

 

Vou testar aqui

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não precisa não... com o próprio php tu faz cara


agora que nem o cara falou la...

"SELECT idade,cidade,graduacao FROM tabela WHERE idade <= ".$idade." AND cidade = ".$cidade." AND graduacao =" .$curso";

tu pode fazer um form tipo

<form method="post" ation="">
    <input type="text" placeholder="idade" name="txtIdade"/>
    <input type="text" placeholder="Cidade" name="txtCidade"/>
    <input type="text" placeholder="Curso" name="txtCurso"/>
    <input type="submit" value="Enviar" name="btnEnviar">
</form>

no php

if(isset[$_POST['btnEnviar']))
{
   $idade = $_POST['txtIdade'];
   $cidade = $_POST['txtCidade'];
   $curso = $_POST['txtCurso'];
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Dá uma olhada no meu código por gentileza

 

 

<?php 
    include "conection.php";
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">

<head>

<title>Busca Refinada</title>

<style type="text/css">
           body{background-color:#eeeeee}
		   span { color:#606060;
		           font-weight:bold;
				   }
		 .bt{ background-color:#c00000;
		       COLOR: #FFFFFF;
			   WIDTH:100PX;
			   height:25px;
			   border:0px;
			   cursor:pointer;
			   }
			   input:hover, select:hover, textarea:hover{border:2px solid #0000ff}
			   input:focus, select:focus, textarea:focus{border:2px solid #0000ff}
		   </style>
</head>

<body>

<label> Estado:</label><br/>

<select name="filtro">
 
   <option value="">RJ 
   </option>
     <option value=""> SP
   </option> 
     <option value=""> 	MG </option>
   </option> 
      <option value=""> ES </option>
   </option> 
   <option value=""> RS </option>
   </option> 
      <option value=""> BR </option>
   </option> 
      <option value=""> BA </option>
	  </option> 
      <option value=""> ccc </option>
	  </select>
	 
	  <label> Formacao: </label> 
	 <select name="formacao">
 
   <option value="">zcczcz
   </select>
   
	 <label> Sexo: </label> 
	 <br> 
	
<select name="filtro">

   <option value=""> Masculino
   </option> 
      <option value=""> Feminino
	  </option> 
	  </select>
	 </form>
   
   <?php
        $getcandidatos = "SELECT * FROM candidatos";
		$getcandidatosquery = mysql_query($getcandidatos) or die (mysql_error());
		while ($getcandidatosline = mysql_fetch_array($getcandidatosquery)) {
		     $candidatos = $getcandidatosline['candidatos'];
			 $candidatos_id = $getcandidatosline['candidatos_id'];
			 echo "<option value='$candidatos_id'>$candidatos</option>";
		}
		if(isset($_POST['btnFiltro']))
{
	$filtro = $_POST['txtFiltro'];
}
$mysql_query = "SELECT * from candidatos WHERE estado LIKE '%" .$filtro."%' OR sexo LIKE '%".$filtro."%' OR formacao LIKE '%".$filtro."%'";
		?>
	
<input type="text" class="txtFiltro" name="txtFiltro" autocomplete="off">
<input type="submit" name="btnFiltro" class="btnFiltro" value="BUSCAR"/>
  </form>
  </body>
  
	</html>

</body>
Fiz alguma coisa errada pois ele parou de submeter

Compartilhar este post


Link para o post
Compartilhar em outros sites

Primeiro erro: <option value=""> o option funciona de forma interna, ou seja, o $_POST dele é o value então precisa ter algum valor

Segundo erro: Onde está abrindo o "form method="post"

Eu corrigi e continua não submetendo

 

html

 

 <form method="post" action="filtro.php">
<label> Estado:</label> <input type="text" name="estado"/><br/>

<select name="filtro">
 
   <option value="estado">RJ 
   </option>
     <option value="estado"> SP
   </option> 
     <option value="estado"> 	MG 
   </option> 
      <option value="estado"> ES </option>
   	 <label> Sexo: </label> 
	 <br> 
	
<select name="filtro">

   <option value="sexo"> Masculino
   </option> 
      <option value="sexo"> Feminino
	  </option> 
	  </select>
	 </form>

php

 <?php
        $getcandidatos = "SELECT * FROM candidatos";
		$getcandidatosquery = mysql_query($getcandidatos) or die (mysql_error());
		while ($getcandidatosline = mysql_fetch_array($getcandidatosquery)) {
		     $candidatos = $getcandidatosline['candidatos'];
			 $candidatos_id = $getcandidatosline['candidatos_id'];
			 echo "<option value='$candidatos_id'>$candidatos</option>";
		}
		if(isset($_POST['btnFiltro']))
{
	$filtro = $_POST['txtFiltro'];
}
$mysql_query = "SELECT * from candidatos WHERE estado LIKE '%" .$filtro."%' OR sexo LIKE '%".$filtro."%' OR formacao LIKE '%".$filtro."%'";
		?>
Quais são os erros?

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

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