Ver Mensaje Individual
  #1 (permalink)  
Antiguo 23/08/2007, 09:59
setram
 
Fecha de Ingreso: julio-2007
Mensajes: 63
Antigüedad: 16 años, 9 meses
Puntos: 0
buscador avanzado

Mi problema es el siguiente:
tengo un buscador senzillo de noticias, que funciona bien. EL problema es cuando quiero hacer la búsqueda avanzada. Le doy la posibilidad al usuario de buscar segun título(textfield), contenido(textarea), importancia(select), tema(checkbox)
y lectores(radiobutton). Es decir, cada una de las opciones posibles del formulario.

He empezado habilitando solo las opciones de titulo, contenido e importancia.
Tengo que decir, que en el select de importancia, he tenido que añadir el valor en blanco (value=nada) por si el usuario no quiere buscar según ese criterio

El código adjunto, funciona bien. Pero creo que si tengo que hacer esto para cada una de las opciones de mi formulario, se llenará de IF's y no creo que sea lo correcto. Alguien me puede dar una mano??


Código PHP:
$campo1=$_POST["tit"];
$campo2=$_POST["cont"];
$campo4=$_POST["imp"];

if (
$campo4=="nada"){
$ssql mysql_query("SELECT * FROM noticias WHERE titulo LIKE '%$campo1%' AND contenido LIKE '%$campo2%'"$link); 
while(
$tabla=mysql_fetch_array($ssql)){
 echo 
"<table width='655' border='1' cellspacing='0' cellpadding='0'>";
 echo 
"<tr><td><strong>Noticia: </strong>".$tabla['titulo']."</td></tr>";
 echo 
"<tr><td><strong>Contenido: </strong>".$tabla['contenido']."</td></tr>";
 echo 
"<tr><td><strong>Importancia: </strong>".$tabla['importancia']."</td></tr>"
 echo 
"</table>";
 echo
"<br>";
 } }
else {
$ssql mysql_query("SELECT * FROM noticias WHERE titulo LIKE '%$campo1%' AND contenido LIKE '%$campo2%' AND importancia LIKE '%$campo4%' "$link); 
while(
$tabla=mysql_fetch_array($ssql)){
 echo 
"<table width='655' border='1' cellspacing='0' cellpadding='0'>";
 echo 
"<tr><td><strong>Noticia: </strong>".$tabla['titulo']."</td></tr>";
 echo 
"<tr><td><strong>Contenido: </strong>".$tabla['contenido']."</td></tr>";
 echo 
"<tr><td><strong>Importancia: </strong>".$tabla['importancia']."</td></tr>"
 echo 
"</table>";
 echo
"<br>"
}
}
?> 
ya de paso...¿como hago para mostrar el mensaje "No se ha encontrado nada" si eso ocurre?

Muchisimas gracias por adelantado!