Lo he mejorado, pero me sigue dando error al buscar varias palabras, con una palabra va bien:
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in /mnt/local/home/domi/dominio/buscador.php on line 21
Código PHP:
//CUENTA EL NUMERO DE PALABRAS
$trozos=explode(" ",$busqueda);
$numero=count($trozos);
if ($numero==1) {
//SI SOLO HAY UNA PALABRA DE BUSQUEDA SE ESTABLECE UNA INSTRUCION CON LIKE
$cadbusca="SELECT * FROM productos WHERE nombre LIKE '%$busqueda%' OR categoria LIKE '%$busqueda%' OR texto LIKE '%$busqueda%' OR marca LIKE '%$busqueda%'";
} elseif ($numero>1) {
//SI HAY UNA FRASE SE UTILIZA EL ALGORTIMO DE BUSQUEDA AVANZADO DE MATCH AGAINST
//busqueda de frases con mas de una palabra y un algoritmo especializado
$cadbusca="SELECT *, MATCH ( nombre, categoria, texto, marca )
AGAINST ( '$busqueda' ) AS Score FROM productos WHERE
MATCH ( nombre, categoria, texto, marca ) AGAINST ( '$busqueda' ) ORDER BY Score DESC LIMIT 50";
}
$result=mysql_query($cadbusca);
while ($row=mysql_fetch_array($result))
{
echo "resultado: ".$row['nombre'];
}
?>
Gracias de antemano