Bienvenido a datoweb.com!! En este foro podrás encontrar ayuda sobre diseño y desarrollo web en general. Si quieres formar parte de esta comunidad para pedir ayuda o colaborar ayudando a otros usuarios del foro solo tienes que registrarte desde el siguiente enlace: Registrarse en el Foro

Buscador múltiple

Hola como están? quisiera saber si alguien conoce la manera de hacer un buscador de este estilo :
ya vi esto link y este otro link pero no llego a hacer como la imagen si alguien me puede orientar..
1
Puntos
788
Visitas
2
Resp
Por fernandoury hace 34 meses
Principiante Sitio web
Respuesta #1
hola, aquí tienes un ejemplo completo utilizando 2 campos de búsqueda pero tu puedes agregar mas si quieres:
<?php 
if(isset($_POST['marca']) || isset($_POST['modelo']))
{
	//Creamos las variables
$consulta='';
$parametros='';

//Creamos el primer parametro en caso de que exista
if ($_POST['marca']!='') $parametros.="marca=".$_POST['marca'].'&';
//Creamos el segundo parametro en caso de que exista
if ($_POST['modelo']!='') $parametros.="modelo=".$_POST['modelo'].'&';

//Dividimos los parametros
$porciones=explode('&',$parametros);

//Contamos la cantidad de parametros
$cantidad=count($porciones)-1;

//Si hay mas de 1 parametro los unimos con AND para mysql
if ($cantidad>1){
for ($i=0; $i < $cantidad; $i++) {
    $consulta.= $porciones[$i].' AND ';
}
} else {
    $consulta.= $porciones[0].' AND ';
}

//Eliminamos el AND del final
$consulta = substr ($consulta, 0, strlen($consulta) - 4);

//Obtenemos algo como columna1=dato1 AND columna2=dato2
echo $consulta.'<br><br>';

//Pasamos los parametros dinámicos de $consulta despues del WHERE
//$query_Consulta = sprintf("SELECT * FROM tabla WHERE $consulta");
}
?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'] ?>">
<input type="text" name="marca"> 
<input type="text" name="modelo"><br>
<input type="submit" value="Buscar">
</form>
solo tienes que copiar y pegar en un fichero php para hacer una prueba y comprender como funciona, una vez tengas eso podras montar el buscador a tu antojo

recuerda que la última linea que va comentada es la mas importante ya que se encarga de hacer la consulta a la DB:
//$query_Consulta = sprintf("SELECT * FROM tabla WHERE $consulta");
solo tienes que adaptarla a tu código poniendo el nombre de tu tabla y descomentarla obviamente..

salu2
3
Puntos
Por alber hace 34 meses
Administrador
Respuesta #2
excelente mil gracias!! lo pondré en practica
0
Puntos
Por fernandoury hace 34 meses
Principiante Sitio web
Compartir en facebook
Compartir en twitter
Compartir
Para comentar Inicia sesión o Registrate