Ver Mensaje Individual
  #8 (permalink)  
Antiguo 30/07/2010, 20:18
Mxrck
 
Fecha de Ingreso: julio-2010
Mensajes: 28
Antigüedad: 14 años, 7 meses
Puntos: 2
Respuesta: Como imprimir registros de 5 en 5

vamos a ver yo hice esto hace poco

Código PHP:
Ver original
  1. function show_entries($page, $connection, $root_path){
  2.     $mi_conexion = $connection;
  3.     $entry_init = 0;
  4.     $entry_end = 0;
  5.     $resultSet = mysql_query("SELECT COUNT(id_entry) AS numero_de_publicaciones FROM publicaciones");
  6.     if ($row = mysql_fetch_array($resultSet)){
  7.         $num_registros = $row['numero_de_publicaciones'];
  8.         $div = $num_registros / 5;
  9.         $mod = $num_registros % 5;
  10.         if ($page == ($div + 1) ){
  11.             $entry_end = (5 * $page ) - $mod;
  12.         }
  13.         else {
  14.             $entry_end = 5 * $page;
  15.             $entry_init = ( 5 * $page ) - 5;
  16.             $sql = "SELECT * FROM publicaciones ORDER BY id_entry DESC LIMIT $entry_init,$entry_end";
  17.             $resultSet = mysql_query($sql);
  18.             while ($row = mysql_fetch_array($resultSet)){
  19.                 $id_entry = $row['id_entry'];
  20.                 $autor = $row['author'];
  21.                 $titulo = $row['title'];
  22.                 $contenido_de_publicacion = $row['entry'];
  23.                 $length_total = strlen($contenido_de_publicacion);
  24.                 $puntos = false;
  25.                 if ($length_total > 1000){
  26.                     $contenido_de_publicacion = substr($contenido_de_publicacion, 0, 1000);
  27.                     $puntos = true;
  28.                 }
  29.                 $titulo_amigable = urls_amigables_entries($titulo);
  30.                 echo "<div style=\"overflow:hidden\">" ;
  31.                 echo "<a href=\"" . $root_path . "articulos/entry.php" . "?id_entry=$id_entry&?titulo=$titulo_amigable\">";
  32.                 echo "<font face=\"Georgia, Times New Roman, Times, serif\" size=\"6\">$titulo</font>";
  33.                 echo "</a><br/><br/>";
  34.                 echo "Publicado por <font color=\"#990000\">$autor</font>";
  35.                 echo $contenido_de_publicacion;
  36.                 if ($puntos)
  37.                     echo "...";
  38.                 echo "<br />";
  39.                
  40.                 $resultSet2 = mysql_query("SELECT COUNT(id_comment) as numero_comentarios FROM comentarios WHERE id_entry = $id_entry");
  41.                 if ($numero_comentarios = mysql_fetch_array($resultSet2)){
  42.                     $num = $numero_comentarios['numero_comentarios'];              
  43.                     echo "<strong>$num Comentario(s)</strong>";
  44.                 }
  45.                 echo "<hr width=\"80%\" \">";
  46.                 echo "<br /><br />";               
  47.                 echo "</div>";
  48.             }
  49.             $iterador = 0;
  50.             echo "<div align=\"center\">";
  51.             $pagina_final = ($div + 1);
  52.             if ($mod == 0)
  53.             $pagina_final = $div;
  54.             /* Este while es el que crea la nomeros de paginas abajo 1,2,3,4,5...
  55.              * Modificalo para mostrar los 4 botones que quieres siempre
  56.              * y en el action del boton le mandas el numero de pagina segun corresponda
  57.              * en tu caso al primer boton le mandas page=1 al siguiente page=$page-1 al siguiente page=$page+1
  58.              * y el ultimo page = $pagina_final
  59.             */
  60.             while ($iterador < $pagina_final){
  61.                 if ($page == ($iterador + 1)){
  62.                     echo $page . "   ";
  63.                 }
  64.                 else {
  65.                     echo "<a href=\"" . $root_path . "articulos/entry.php" . "?page=" . ($iterador + 1) ."\">";
  66.                     echo ($iterador + 1);
  67.                     echo "</a>";
  68.                     echo "   ";
  69.                 }
  70.                 $iterador++;
  71.             }
  72.             echo "</div>";
  73.         }
  74.     }
  75. }