Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/11/2010, 13:42
esaenz22
(Desactivado)
 
Fecha de Ingreso: abril-2008
Mensajes: 787
Antigüedad: 16 años, 1 mes
Puntos: 7
Pregunta como limitar el numero de paginas

buenas tardes. tengo un proyecto de una galeria de fotos con su respectiva categoria. el producto tiene 40 registros (dependiendo si puede aumentar).

el numerado de paginacion lo hago con un bucle y comparo si la variable pagina que inicia es igual al contador del bucle.

en este caso me muestra del 1 al 6 (dependiendo del numero de registros). pero yo quiero que me muestre del 1 al 4. osea cuando le doy siguiente, que aparezca la paginacion 5, 6, 7, 8 y asi sucesivamente.

asi como este ejemplo.

1 2 3 4 > >>
5 6 7 8 > >>

este es mi codigo qu hago la paginacion.

Código PHP:
Ver original
  1. <?php
  2.  
  3. $mostrar = 5; //Registros a mostrar
  4. $pagina = $_GET["pagina"];
  5. if (!isset($pagina)) {
  6.     $inicio = 0;
  7.     $pagina = 1;
  8. }
  9. else
  10.     $inicio = ($pagina - 1) * $mostrar;
  11.  
  12.  
  13. $sql = "SELECT idproducto FROM producto";
  14. $rpta = mysql_query($sql) or die(mysql_error());
  15. $reg_totales = mysql_num_rows($rpta);
  16.  
  17. #Segunda consulta para saber cuantos registros hay.
  18. $resultado    = "SELECT idproducto FROM producto LIMIT $inicio, $mostrar";                         
  19. $rs_resultado = mysql_query($resultado) or die(mysql_error()); 
  20. $pag_totales = ceil($reg_totales / $mostrar);      
  21.  
  22. if($reg_totales) {
  23.                                    
  24. #Primer registro de todos: Ir al primero
  25. if($pagina!=1)
  26. echo "<a href='pagina.php?pagina=1&url_categoria=".$_GET['url_categoria']."' class='previous'> <img src=\"images/previous.png\" border=\"0\" /> </a>";
  27.  
  28. if(($pagina - 1) > 0) {
  29.  
  30. #bucle para la numeracion de la pagina.
  31. for ($i=1; $i<=$pag_totales; $i++)
  32. {
  33.     if ($pagina == $i)
  34.     {
  35. ?>
  36. <a class='sel' href = 'javascript:void(0);'><?php echo $pagina; ?></a>
  37. <?php
  38.     } else {
  39. ?>
  40. <a href="pagina.php?pagina=<?php echo $i; ?>" ><?php echo $i; ?></a>
  41. <?php
  42.  
  43.     }  
  44. }
  45.  
  46. if(($pagina + 1)<=$pag_totales)
  47. {
  48. ?>
  49. <a href="pagina.php?pagina=<?php echo ($pagina+1); ?>" class="previous"> <img src="images/snext.png" border="0" /> </a>
  50. <?php
  51.  
  52. }
  53.  
  54. //Ir al ultimo registro
  55. if($pagina<=($pag_totales-1))
  56.  echo "<a href='pagina.php?pagina=".($pag_totales)."' class=\"sprevious\"> <img src=\"images/next.png\" border=\"0\" /> </a>";     
  57.  
  58. }
  59.  
  60. }
  61.  
  62. ?>

saludos.

Última edición por esaenz22; 19/11/2010 a las 14:34 Razón: correccion.