Ver Mensaje Individual
  #4 (permalink)  
Antiguo 05/02/2013, 13:38
Mosazu
 
Fecha de Ingreso: abril-2010
Mensajes: 31
Antigüedad: 14 años
Puntos: 1
Respuesta: Crear filtrado de busqueda

Yo lo que hacía era construir el query con el array que tiene las condiciones de la búsqueda: Por ejemplo hablemos de un item que tiene nombre, código, color y precio.

Código PHP:
function creaQuery($opciones){
$q "SELECT * FROM item";
$bandera true;
if(isset(
$opciones['nombre']) && $opciones['nombre'] != ''){
$q .= ($bandera)?" WHERE nombre = ".$nombre" AND nombre = ".$nombre;
$bandera false;
}
if(isset(
$opciones['codigo']) && $opciones['codigo'] != ''){
$q .= ($bandera)?" WHERE codigo= ".$codigo" AND codigo= ".$codigo;
$bandera false;
}
if(isset(
$opciones['color ']) && $opciones['color '] != ''){
$q .= ($bandera)?" WHERE color = ".$color " AND color = ".$color ;
$bandera false;
}
if(isset(
$opciones['precio']) && $opciones['precio'] != ''){
$q .= ($bandera)?" WHERE precio= ".$precio" AND precio= ".$precio;
$bandera false;
}

$q.=" ORDER BY codigo LIMIT 20";
return 
$q;

No te olvides de validar que los input no sean maliciosos y tengan el formato correcto.