Hola
podrias hacer esto mas o menos
si es solo una palabra la que ponen en el cuadro de busqueda que la consulta sea con LIKE y si son do o mas que la consulta a la BBDD sea con MATCH AGAINST.
Pero debes tener los campos de la BBDD, que desees usar para buscar como INDICE FULL TEXT, lo puedes hacer con administrador de MYSQL
PhpMyAdmin
Código PHP:
$busqueda = $_POST['palabra'];
if ($busqueda<>''){
//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
$_pagi_sql="SELECT * FROM descargas WHERE description =1
AND name LIKE '%$busqueda%' OR description LIKE '%$busqueda%' ORDER BY name ASC";
} 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
$_pagi_sql="SELECT * , MATCH(name, description) AGAINST ('+$busqueda') as Score FROM descargas
WHERE MATCH (name, description) AGAINST ('+$busqueda') ORDER BY Score DESC";
} else{echo "no hay resultados";}
Un saludo