Código PHP:
//CUENTA EL NUMERO DE PALABRAS
$busqueda=="";
// aunque creo que deberia de ir es $busqueda = $_POST['palabra'];
$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 rugs_carpets WHERE subcategory LIKE '%$busqueda%' OR products LIKE '%$busqueda%' LIMIT 50";
} 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 * FROM rugs_carpets WHERE MATCH (products) AGAINST ('$busqueda') or MATCH (subcategory) AGAINST ('$busqueda') ORDER BY Score DESC LIMIT 50";
}
$result=mysql_query($cadbusca,$conexion);
while($row=mysql_fetch_object($result)){
//Mostramos los titulos de los articulos o lo que deseemos...
$referencia=$row->id;
$titulo=$row->subcategory;
echo $referencia." - ".$titulo."<br>";
}
Prueba asi a ver que tal vamos...