Tengo un problema que me esta dando quebraderos de cabeza durante varios dias.. y no consigo resolverlo.
Tengo un formulario con 6 Select y un boton de enviar. Como opcion preseleccionada para los 6 tengo ALL. Cuando se envia esta opcion ALL a la base de datos logicamente no puede ser consultada y me tiene que mostrar todos los resultados. Si tengo un Select que pone precio y la tabla es integer no puede buscar la palabra ALL. (En este caso se tiene que omitir la busqueda de este select en concreto). Con un Select solo que pone ALL es facil, filtrarlo con un if; pero cuando son 6 y hay muchisimas combinaciones no se domo hacerlo. Habia pensado algo asi pero no me funciona...
Código PHP:
include 'conexion.php';
$where = array();
if($categoria!="ALL"){
array_push($where,' Categoria = "'.$categoria.'" ');
};
if($peso!="ALL"){
array_push($where,' Peso = "'.$peso.'" ');
};
if($duracion="ALL"){
array_push($where,' Duracion = "'.$duracion.'" ');
};
$where = ( !empty($where) ) ? ( ' WHERE ' . implode(' AND ', $where) ) : '';
$qry = 'SELECT * FROM videos' . $where;
$result=mysql_query($qry);
if (false === $result) {
echo mysql_error();}
Un saludo