Hola a todos y gracias por la ayuda de antemano. Bien, tengo el siguiente código
Código HTML:
<style type="text/css">
<!--
.Estilo9 {font-family: Verdana, Arial, Helvetica, sans-serif; font-size: 10px; }
-->
</style>
<?
// Datos de conexión a la base
$base="***";
$con=mysql_connect(localhost,***,***);
mysql_select_db($base,$con);
if (!isset($pg))
$pg = 0; // $pg es la pagina actual
$cantidad=5; // cantidad de resultados por página
$inicial = $pg * $cantidad;
$pegar = "SELECT * FROM mitabla where id_zona='$_REQUEST[id]' ORDER BY fecha desc, id_miregistro desc LIMIT $inicial,$cantidad";
$cad = mysql_db_query($base,$pegar) or die (mysql_error());
$contar = "SELECT * FROM mitabla ORDER BY fecha";
$contarok= mysql_db_query($base,$contar);
$total_records = mysql_num_rows($contarok);
$pages = intval($total_records / $cantidad);
?>
<table width="500" border="0">
<tr class="Estilo9">
<td width="65"><div align="left"><strong>> Fecha</strong></div></td>
<td width="110"><div align="left"><strong>> Registro</strong></div></td>
<td width="80"><div align="left"><strong>> Categoria </strong></div></td>
</tr>
<tr class="Estilo9">
<td colspan="3"><? while($array = mysql_fetch_array($cad)) { ?>
<table width="100%" border="0">
<tr class="Estilo9">
<td width="50"><?php echo $array['fecha']; ?></td>
<td width="110"><div align="left"><a href="<?php echo $array['registro']; ?>/<?php echo $array['id_registro']; ?>.html"><?php echo $array['registro'].""; ?></a></div></td>
<td width="80"><div align="left"><?php echo $array['id_categoria']; ?></div></td>
</tr>
</table><? } ?>
</tr>
</table>
<?
// Imprimiendo los resultados
// Cerramos la conexión a la base
$con=mysql_close($con);
// Creando los enlaces de paginación
echo "<p class=Estilo9>";
if ($pg != 0) {
$url = $pg - 1;
echo "<a href='$PHP_SELF?pg=".$url."'>« Anterior</a> ";
} else {
echo " ";
}
for ($i = 0; $i <= $pages; $i++) {
if ($i == $pg) {
if ($i == "0") {
echo "<b> 1 </b>";
} else {
$i = $i+1;
echo "<b> ".$i." </b>";
}
} else {
if ($i == "0") {
echo "<a href=$PHP_SELF?pg=".$i.">1</a> ";
} else {
echo "<a href='$PHP_SELF?pg=".$i."'>";
$i = $i+1;
echo $i."</a> ";
}
}
}
if ($pg < $pages) {
$url = $pg + 1;
echo "<a href='$PHP_SELF?pg=".$url."'>Siguiente »</a>";
} else {
echo " ";
}
echo "</p>";
?>
El código funciona perfectamente salvo por 2 motivos.
- Los enlaces de la paginación es decir para ir a las distintas páginas de resultados no me recogen la variable de la zona (id=zona) a la que pertenecen los resultados
- el número 3 no me aparece es decir cuando pagina aparece 1 2 4 5
Espero haberme explicado bien