Tengo muchas preguntas pero la que mas me urge es saber en qué parte estoy fallando del paginador que he hecho, ya que me muestra los resultados y tal...pero me cuando paso a la pagina siguiente me sigue mostrando los mismos resultados.
no tengo mucha idea de esto y me esta costando bastante.... por eso agradeceria la ayuda.
adjunto el codigo. (esta sin maquetar ni nada...que esa es otra...cuando maqueto el buscador no me muestra todos los resultados que son, pero eso es otra historia...)
Gracias.
![Neurótico](http://static.forosdelweb.com/fdwtheme/images/smilies/scared.png)
************************************************
Código PHP:
<?
$bd_servidor = "localhost";
$bd_usuario = "xxxxx";
$bd_contrasenya = "xxxx";
$bd_bdname = "xxx";
$bd_tabla = "seram";
$link = mysql_connect($bd_servidor,$bd_usuario,$bd_contrasenya);
mysql_select_db($bd_bdname,$link);
$registros = 3;
if ($_POST['enviar'] =="")
$buscarenviar = $_GET['enviar'];
else {
$buscarenviar = $_POST['enviar'];
}
if ($_POST['campo'] =="")
$buscarcampo = $_GET['campo'];
else {
$buscarcampo = $_POST['campo'];
}
if ($_POST['palabra'] =="")
$buscarpalabra = $_GET['palabra'];
else {
$buscarpalabra = $_POST['palabra'];
}
$pagina = $_GET["pagina"];
if (!$pagina) {
$inicio = 0;
$pagina = 1;
}
else {
$inicio = ($pagina - 1) * $registros;
}
?>
<form name="buscador" method="post" action="resultados.php">
<p class="cuerpo"><br>
<span class="cuerponegrita">Buscar por:</span><br />
<select name="campo" class="cuerpo">
<option value="autor">Autor</option>
<option value="imagen">Imagen</option>
<option value="capitulo">Capitulo</option>
</select>
<br />
<br />
<span class="cuerponegrita">Palabra(s):</span>
<input name="palabra" type="text" class="cuerpo">
<br />
<input type="hidden" name="enviar" value="enviar">
<label>
<input type="submit" name="Submit" value="Enviar">
</label>
</p>
</form>
<?
if(isset($buscarenviar)) {
$query = "SELECT * FROM seram WHERE ".$buscarcampo." LIKE '%".$buscarpalabra."%' ORDER BY capitulo LIMIT 10";
$result = mysql_query($query) or die (mysql_error ("Algo va mal"));
$numregistros = mysql_num_rows ($result);
$total_paginas = ceil($numregistros / $registros);
$query = "SELECT * FROM seram WHERE ".$buscarcampo." LIKE '%".$buscarpalabra."%' ORDER BY capitulo LIMIT ".$inicio.", ".$registros;
if($numregistros > 0) {
while ($row = mysql_fetch_array($result)) {
extract ($row);
echo "<b>".$autor."</b><br>";
echo "<b>".$imagen."</b><br>";
echo "<b>".$capitulo."</b><br>";
echo "<img src='".$imagen_ruta."' width='90'</b><br>";
}
} else {
echo "(sin resultados)";
}
//A partir de aquí empieza la paginacion.
// Paginación -- página anterior
if ($pagina == 1)
{
print " ";
} else {
$anterior = $pagina - 1;
print "<a href=resultados.php?pagina=".$anterior."&campo=".$buscarcampo."&palabra=".$buscarpalabra."&enviar=".$buscarenviar."> Anterior </a> ";
}
}
// para ver los enlaces y las paginas
if ($total_paginas > 1){
for ($i=1;$i<=$total_paginas;$i++){
if ($pagina == $i)
//si muestro el índice de la página actual, no coloco enlace
print "<font color=black>" . $pagina . "</font> ";
else
//si el índice no corresponde con la página mostrada actualmente, coloco el enlace para ir a esa página
print "<a href=resultados.php?pagina=".$i."&campo=".$buscarcampo."&palabra=".$buscarpalabra."&enviar=".$buscarenviar."> ".$i." </a> ";
}
}
// Paginación -- pagina siguiente
if ($total_paginas== 0) {
$pagina = 0;
}
if ($pagina == $total_paginas)
{
print " ";
} else {
$siguiente = $pagina + 1;
print "<a href=resultados.php?pagina=".$siguiente."&campo=".$buscarcampo."&palabra=".$buscarpalabra."&enviar=".$buscarenviar."> Siguiente </a> ";
}
print "</span>";
// fin ver paginacion
?>