Ver Mensaje Individual
  #1 (permalink)  
Antiguo 08/03/2009, 02:51
mavbnet
 
Fecha de Ingreso: junio-2008
Mensajes: 10
Antigüedad: 16 años, 9 meses
Puntos: 0
Ayuda con paginación de resultados

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>&gt; Fecha</strong></div></td>
    <td width="110"><div align="left"><strong>&gt; Registro</strong></div></td>
    <td width="80"><div align="left"><strong>&gt; 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."'>&laquo; Anterior</a>&nbsp;";
} 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>&nbsp;";
}
}
}
if ($pg < $pages) {
$url = $pg + 1;
echo "<a href='$PHP_SELF?pg=".$url."'>Siguiente &raquo;</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