hola a todos..estoy trabajando sobre un buscador..pero me arroja el siguiente error:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in
aclaro que estoy trabajando con la libreria adodb5
el codigo es el siguiente:
<?php
$registros = 3;
if (!$pagina) {
$inicio = 0;
$pagina = 1;
}
else {
$inicio = ($pagina - 1) * $registros;
}
$palabra_original = $_POST[palabra];
if ( isset($palabra_original) )
{
$palabra = htmlentities($palabra_original);
// Incluimos el archivo con los datos y la conexion
// a la base de datos
include('configuracion.php');
if (!$num) $num=0;
//Separamos las palabras usando cada espacio como separador
//Hacemos la separación de la cadena a buscar
$cadenas_buscadas = explode(" ",$palabra);
$numero_de_cadenas = count($cadenas_buscadas);
if ( $numero_de_cadenas == 1 )
{
//Si solo hay una palabra usamos LIKE
$sql="select *
FROM libros
WHERE (titulo LIKE '%$palabra%' OR desarrollo LIKE '%$palabra%')
ORDER BY titulo
LIMIT ".$num.",20";
$total_registros = mysql_num_rows($sql); //aqui aparece el error
$total_paginas = ceil($total_registros / $registros);
}
if ( $numero_de_cadenas > 1 )
{
//Si hay más de una palabra usaremos MATCH AGAINST
$sql="select distinct * , MATCH (titulo, desarrollo)
AGAINST ( '%".$palabra."%' ) AS Criterio
FROM libros WHERE MATCH (`titulo`,`desarrollo`)
AGAINST ( '%".$palabra."%' IN BOOLEAN MODE )
ORDER BY Criterio
DESC LIMIT ".$num.",20";
$total_registros = mysql_num_rows($sql); //aqui aparece el error
$total_paginas = ceil($total_registros / $registros);
}
$rs = $db->Execute($sql);
if ( !isset($rs) )
{
echo $db->ErrorMsg();
}
if ( $rs->fields["desarrollo"] )
{
echo '<p>Texto ingresado: <b>'.$palabra_original.'</b></p>';
echo '<p>Número de palabras buscadas: <b>'.$numero_de_cadenas.'</b></p>';
// echo '<table width=\"400\">
echo '<th>';
echo'<strong><p># Título</p></strong>';
echo'</th>';
$contador = 0;
while (!$rs->EOF)
{
$contador++;
echo '<tr>';
echo '<td>';
echo "<a>".$contador."</a>".".";
$paso=" " .$rs->fields["referencia"]."";
echo " " .$rs->fields["titulo"]."";
echo "<a href='descargas7.php?referencia=$paso' target='_parent'>descargar " .$rs->fields["titulo"]."</a></br><tr></tr>";
echo'</td>';
echo '<td>';
echo '<td>';
echo '<td>';
echo '<td>';
$rs->MoveNext();
}
}
else
{
echo 'No se han encontrado resultados correspondientes a su búsqueda.';
}
if($total_registros) {
echo "<center>";
if(($pagina - 1) > 0) {
echo "<a href='paginacion.php?pagina=".($pagina-1)."'>< Anterior</a> ";
}
for ($i=1; $i<=$total_paginas; $i++){
if ($pagina == $i)
echo "<b>".$pagina."</b> ";
else
echo "<a href='paginacion.php?pagina=$i'>$i</a> ";
}
if(($pagina + 1)<=$total_paginas) {
echo " <a href='paginacion.php?pagina=".($pagina+1)."'>Sigui ente ></a>";
}
echo "</center>";
}
}
else
{
header('Location: index.php');
}
?>
por que sera??
saludos:.... :(