Ver Mensaje Individual
  #1 (permalink)  
Antiguo 09/03/2003, 20:49
Zertiko
 
Fecha de Ingreso: noviembre-2002
Mensajes: 571
Antigüedad: 21 años, 5 meses
Puntos: 2
No se porque pero este codigo no funciona...

Hola, he realizado un buscador para mi web, primeramente lo realize para que puediera buscar solo una palabra en en los campos de la tabla Buscador, al darme cuenta que si introducia mas de una palabra en el formulario del buscador no encontraba nada, opte por utilizar un explode para desglosar la variable $buscar, y ahora no se porque pero cada vez que meto una o mas palabras para buscar me saca todos los registros de la tabla.

Si alguien pudiese decirme porque es le estaria mu pero que my agradecido xddd la verdad no le encuentro explicación a continuación pego el codigo:

# asignamos la conexion a una base de datos determinada

mysql_select_db($base, $conexion);

# divimos la variable $buscar en trozos

$trozobuscar = explode(" ",$buscar);

# establecemos el criterio de seleccion

$resultado = mysql_query("SELECT Titulo, Descripcion, Url FROM $tabla WHERE (Titulo LIKE '%$trozobuscar[0]%' OR Titulo LIKE '%$trozobuscar[1]%' OR Titulo LIKE '%$trozobuscar[2]%' OR Titulo LIKE '%$trozobuscar[3]%' OR Descripcion LIKE '%$trozobuscar[0]%' OR Descripcion LIKE '%$trozobuscar[1]%' OR Descripcion LIKE '%$trozobuscar[2]%' OR Descripcion LIKE '%$trozobuscar[3]%' OR Claves LIKE '%$trozobuscar[0]%' OR Claves LIKE '%$trozobuscar[1]%' OR Claves LIKE '%$trozobuscar[2]%' OR Claves LIKE '%$trozobuscar[3]%') ORDER BY Titulo ASC", $conexion);


# CREAMOS UNA CABEZERA DE UNA TABLA (codigo HTML)

echo "<table width='90%'cellpadding='0' cellspacing='0' align=center bgcolor='#EFEFEF' border=0>";

# establecemos un bucle que recoge en un array
# cada una de las LINEAS DEL RESULTADO DE LA CONSULTA
# utilizamos en esta ocasión <<myslq_fetch_array>>
# recuerda que esta ultima función devuelve un array escalar
# y otro asociativo con los resultados

while ($encontrados = mysql_fetch_array($resultado)){
echo "<tr><td height='20'>&nbsp;</td></tr>";
echo "<tr><td height='20' valign='middle' bgcolor='#003366'>&nbsp;<font face='arial' size='1'><strong><a href='".$encontrados['Url']."'>".$encontrados['Titulo']."</a></strong></font></td></tr>";
echo "<tr><td></td></tr>";
echo "<tr><td><font face='arial' size='1'><strong>".$encontrados['Descripcion'].".</strong></font></td></tr>";
echo "<tr><td><br></td></tr>";
}
echo "</table>";

if($vacio=mysql_num_rows($resultado)==0){
echo "<br><br><font face='arial' size='1'><strong>No se han encontrado coincidencias con la cadena <font color='#FF0000'>".$buscar."</font>.</strong></font>";
}

# cerramos la conexión

mysql_close();

?>

Gracias desde ya!!! Un saludo.