Ver Mensaje Individual
  #1 (permalink)  
Antiguo 18/10/2008, 11:31
charlyta
 
Fecha de Ingreso: junio-2008
Mensajes: 291
Antigüedad: 15 años, 10 meses
Puntos: 9
Exclamación error en consulta

Hola! tengo dos formularios de busqueda en dos páginas distintas, uno con un campo simple y otro de busqueda avanzada que hacen una consulta a la misma pagina php. El problema que tengo es en la consulta de busqueda avanzada. Cuando busco por coleccion me aparecen todos los resultados de toda la bd. Este es mi código. Os gradecería la ayuda porque es muy pero que muy urgente. Gracias a todos.

Código PHP:
if ($clave<>''){  


 
   
$trozos=explode(" ",$clave); 
   
$numero=count($trozos); 
  if (
$numero==1)
   { 
 
   
$buscar="SELECT * FROM $db WHERE NOMB LIKE '%$clave%' OR AUTOR LIKE '%$clave%' OR TEMA LIKE '%$clave%' OR COLECCION LIKE '%$clave%' OR EDITORIAL LIKE '%$clave%' OR LIBRE LIKE '%$clave%' OR OBSERVA LIKE '%$clave%' order by $ordenarpor $orden"
  }
  elseif (
$numero>1)
   { 
 
   
$buscar"SELECT * , MATCH (NOMB, AUTOR, TEMA, COLECCION, EDITORIAL, LIBRE, OBSERVA) AGAINST ('$clave') AS Score FROM vells WHERE MATCH (NOMB, AUTOR, TEMA, COLECCION, EDITORIAL, LIBRE, OBSERVA) AGAINST ('$clave') ORDER BY Score DESC ";
}

}elseif (!
$clave<>''){ 
 
$buscar "SELECT * FROM $db WHERE  AUTOR LIKE '%$AUTOR%' AND TEMA LIKE '%$TEMA%' AND LIBRE LIKE '%$LIBRE%' AND NOMB LIKE '%$NOMB%' OR TEMA LIKE '%$TEMA%' AND (AUTOR LIKE '%$AUTOR%' AND LIBRE LIKE '%$LIBRE%' AND NOMB LIKE '%$NOMB%') OR NOMB LIKE '%$NOMB%' AND (AUTOR LIKE '%$AUTOR%' AND LIBRE LIKE '%$LIBRE%' AND TEMA LIKE '%$TEMA%') order by $ordenarpor $orden";
 }