hola:
Lo primero que tienes que hacer es probar la consulta sin hacer la paginación. Si funciona con una o varias palabras, entonces sabrás que no hay error ahí.
Por si te interesa, puedes probar Paginator y decir cual es el resultado que obtienes.
Aquí te pongo un ejemplo:
Código PHP:
//Primero, sacar el select_db() del if porque en los dos se hace lo mismo.
$query.=mysql_select_db($database_mallorcaempresa, $mallorcaempresa);// por qué ".="?? no sé, así estaba.
$query_Recordset1 = '';
if(count($palabras)>1){
$query_Recordset1 = sprintf("SELECT * , MATCH (nomempresa,frase)
AGAINST ('%%%s%%') AS puntuacion FROM empreses
WHERE MATCH(nomempresa,frase) AGAINST('%%%s%%')
ORDER BY puntuacion DESC"
, $colname_Recordset1,$colname_Recordset1);
}else{
$query_Recordset1 = sprintf("SELECT * FROM empreses
WHERE (nomempresa like '%%%s%%' or frase like '%%%s%%')
AND idpoble like '%s'"
, $colname_Recordset1,$colname_Recordset1,$colname2_Recordset1);
}
// Aquí arrancamos con la Paginación:
$_pagi_sql = $query_Recordset1;
// Supongo que habrá que propagar un par de variables:
$_pagi_propagar = array('colname_Recordset1', 'colname2_Recordset1');
// Si es necesario otras variables que puedes ver en la doc de Paginator.
//...
// Ahora incluyes el script (que ya realiza la consulta).
include("paginator.inc.php");
//Y puedes mostrar los resultados:
while($row_Recordset1 = mysql_fetch_assoc($Recordset1)){
// Muestras los datos como quieras, por ejemplo:
echo "<pre>";
var_dump($row_Recordset1);
echo "</pre><hr />";
}
// Y muestras la barra de navegación entre páginas:
echo $_pagi_navegacion;
Si obtienes algún error, por favor detállalo.
Saludos