Ver Mensaje Individual
  #3 (permalink)  
Antiguo 30/04/2012, 17:12
Avatar de juan_14nob
juan_14nob
 
Fecha de Ingreso: abril-2010
Mensajes: 552
Antigüedad: 14 años
Puntos: 6
Respuesta: "plugin" para paginacion

Entiendo..

Modificar las variables $option_to, $table, $field

$option_to es un INT para liminar la cantidad de registros a mostrar por pagina
$table = es nuestra tabla de la base de datos
$field = es nuestro campo de la bd


pagin.php
Código PHP:
Ver original
  1. <html>
  2. <head>
  3. <link rel="stylesheet" type="text/css" href="styles.css"></link>
  4. </head>
  5. <body>
  6.  
  7. <?php
  8. /*
  9. *   Date:   29/04/2012
  10. */
  11.  
  12.  
  13. //       ## Complete this Three vars
  14. $option_to = 4;
  15. $table = "";
  16. $field = "";
  17.  
  18. //connection at your databases
  19. $connect = mysql_connect("localhost", "root", "") or die("Problemas en la conexion");
  20. mysql_select_db("world", $connect) or die ("Problema al seleccionar bd");
  21.  
  22.  
  23.  
  24. if(isset($_GET['id'])){
  25.     $id = $_GET['id'];
  26.  
  27.     $id2 = ($id * $option_to) - $option_to;  
  28.  
  29. }else{
  30.     $id = 1;
  31.     $id2 = 0;
  32. }
  33.  
  34. $sql = "SELECT {$field} FROM {$table} LIMIT {$id2}, {$option_to}";
  35. $query = mysql_query($sql,$connect) or die(mysql_error());
  36.  
  37. $query_count = mysql_query("SELECT {$field} FROM {$table}",$connect) or die(mysql_error());
  38.  
  39. while($con = mysql_fetch_array($query)){
  40.  
  41.     echo $con['nombre']."<br />";
  42. }
  43.  
  44. $con = mysql_fetch_array($query);
  45.  
  46. $count_total = mysql_num_rows($query_count);
  47. if($id == 1){
  48.     $prev = "#";
  49. }else{
  50.     $id2 = $id - 1;
  51.     $prev = "?id=".$id2;
  52. }
  53. ?>
  54.  
  55. <div id="paginator">
  56. <a href="pagin.php<?php echo $prev;?>"><</a>
  57. <?php
  58.  
  59. $h = $id * $option_to;
  60.  
  61. if($count_total == 0){
  62.     echo "no records";
  63. }elseif($count_total <= $option_to){
  64.  
  65.     echo "<a class='idnow' href=pagin.php?id=1>1</a>";
  66.    
  67. }elseif($count_total >= $option_to+1 AND $count_total <= $option_to*2){
  68.     echo "<a class='idnow' href=pagin.php?id=1>1</a>";
  69.     echo "<a href=pagin.php?id=2>2</a>";
  70.  
  71. }elseif($id == 2 AND $count_total >= $option_to*2){
  72.  
  73.         $number_ini = $id - 1;
  74.         $number_last = $id + 2;
  75.         numbers_paginator($number_ini,$number_last,2);
  76.  
  77. }elseif($count_total > $option_to*2 AND $id != 1){
  78.     if($h < $count_total){
  79.  
  80.         $number_ini = $id - 1;
  81.         $number_last = $id + 2;
  82.         numbers_paginator($number_ini,$number_last,2);
  83.  
  84.     }else{
  85.  
  86.         $number_ini = $id - 2;
  87.         $number_last = $id + 1;
  88.  
  89.         numbers_paginator($number_ini,$number_last,3);
  90.  
  91.     }  
  92.    
  93. }elseif($id == 1 AND $count_total > $option_to*2){
  94.  
  95.     $number_last = $id + 3;
  96.    
  97.     numbers_paginator($id,$number_last,1);
  98. }else{
  99.     echo "<a href=pagin.php?id=1>1</a>";
  100.     echo "<a href=pagin.php?id=2>2</a>";
  101.  
  102. }
  103.  
  104. // Calcular el avance
  105.  
  106. $ultimo = ceil($count_total / $option_to);
  107.  
  108. if($id == $ultimo){
  109.     $next = "#";
  110. }else{
  111.     $id = $id+1;
  112.     $next = "?id=".$id;
  113. }
  114.  
  115. ?>
  116.  
  117.     <a href="pagin.php<?php echo $next;?>">></a>
  118. </div>
  119.  
  120.  
  121. </div>
  122. <?php
  123.     function numbers_paginator($x1,$x2,$mark){
  124.         $_i = 0;
  125.         for($i=$x1;$i<$x2;$i++){
  126.         $_i++;
  127.        
  128.             if($_i == $mark){
  129.                 echo "<a class='idnow' href=pagin.php?id=".$i.">".$i."</a>";
  130.             }else{
  131.                 echo "<a href=pagin.php?id=".$i.">".$i."</a>";
  132.             }
  133.            
  134.         }
  135.    
  136.     }
  137.  
  138.  
  139. ?>
  140. </body>
  141. </html>


Estos son los Estilos...


styles.css
Código CSS:
Ver original
  1. /*  Styles  */
  2.     #paginator{
  3.         width: 200px;
  4.        
  5.     }
  6.     #paginator a{
  7.         background: url("background_green_more.png") no-repeat;
  8.         background-position: 0px -21px;
  9.         color: #000;
  10.         font-size: 11px;
  11.         height: 20px;
  12.         text-decoration: none;
  13.         padding: 0.2em 0.5em;
  14.         width: 22px;
  15.    
  16.     }
  17.     #paginator a:hover{
  18.         background-position: 0px 1.5px;
  19.     }
  20.  
  21.     #paginator a span{
  22.         font-weight: bold;
  23.        
  24.     }
  25.     .Claas_may{
  26.         padding: 0.2em 0.3em !important;
  27.    
  28.     }
  29.     .idnow{
  30.         background-position: 0px 1.5px !important;
  31.     }

Última edición por juan_14nob; 02/01/2015 a las 16:26 Razón: le puse los estilos