Ver Mensaje Individual
  #10 (permalink)  
Antiguo 03/03/2005, 09:55
Avatar de Niconirva
Niconirva
 
Fecha de Ingreso: marzo-2005
Mensajes: 119
Antigüedad: 19 años, 2 meses
Puntos: 0
Vine a dar una mano!, Martin Tandil tiene razón, debes tener en cuenta si las variables estan vacias o no (nulas o no) para estructurar correctamente los querrys en la bd. Pero creo que Martin los puso un poco complicado.
Lo que debes hacer es poner en tu código php una serie de querry, condicionadas previamente con if, de manera de dejar que una sola prevalezca... a que me refiero, ej: supongamos luego de capturar las variables pais y nombre por ejemplo....

<?
$nombre=$_POST['nombre'];
$pais=$_POST['pais'];
$inicio=$_POST['inicio'];
/*supongamos que la variable nombre nunca es vacia y en tal caso va a estar siempre, luego definimos los querrys teniendo en cuenta que pais e inicio si pueden ser nulas*/

//Caso 1) pais es nulo y inicio es nulo

if(strlen($pais)==0 && strlen($inicio)==0)
{$query="select id, nombre, pais, inicio, contenido from ferias where nombre LIKE '%".$_POST[nombre]."%'"}

//Caso 2) pais es no nulo pero inicio es nulo

elseif(strlen($pais)!==0 && strlen($inicio)==0)

{$query="select id, nombre, pais, inicio, contenido from ferias where nombre LIKE '%".$nombre."%' And pais LIKE '%".$pais."%'"}

//Caso 3) pais es nulo pero inicio no es nulo

elseif(strlen($pais)==0 && strlen($inicio)!==0)
{$query="select id, nombre, pais, inicio, contenido from ferias where nombre LIKE '%".$nombre."%' And inicio LIKE '%".$inicio."%'"}

//Caso 4 ninguno es nulo (pregunta más general)

elseif(strlen($pais)!==0 && strlen($inicio)!==0)
{$query="select id, nombre, pais, inicio, contenido from ferias where nombre LIKE '%".$nombre."%' And inicio LIKE '%".$inicio."%' And pais LIKE '%".$pais."%'"}
//a este punto prevaleceria solo una querry dado dado que las posibilidades //son mutamente excluyentes..
mysql_query($query)
//Aquí sigues con tu codigo normal...
?>

Espero que allas entendido el ejemplo..., sino escribime y te mando algo parecido que tengo hecho, saludos!!!