perdona, pero sería algo asi?
en la tabla de busquedas, tengo solo un campo con las palabras a buscar por lo tanto entiendo que quedaría asi.
Código PHP:
function Buscar($buscar) // resultados dentro del buscar
{
$busqueda = str_replace("-"," ", $buscar);
$trozos=explode(" ",$busqueda);
$numero=count($trozos);
if ($numero==1)
{
$consulta = "SELECT * FROM busquedas where busqueda LIKE '%{$buscar}%' and validado = 1 order by rand() limit 0,11";
}
elseif($numero>1)
{
$consulta = "SELECT * , MATCH (busqueda) AGAINST ('" . $buscar . "') AS puntuacion FROM busquedas WHERE validado = 1 and MATCH (busqueda) AGAINST ('$buscar') ORDER BY puntuacion DESC";
}
$sql= mysql_query($consulta);
while($row = mysql_fetch_array($sql))
y en la DB he puesto ahora el FULLTEXT
Código PHP:
CREATE TABLE IF NOT EXISTS `busquedas` (
`id` int(11) NOT NULL auto_increment,
`busqueda` varchar(255) NOT NULL,
`validado` int(11) NOT NULL,
`num` int(11) NOT NULL,
PRIMARY KEY (`id`),
FULLTEXT KEY `busqueda` (`busqueda`)
) ENGINE=MyISAM DEFAULT CHARSET=latin1 AUTO_INCREMENT=51024 ;