Foros del Web » Programando para Internet » PHP »

paginacion en php

Estas en el tema de paginacion en php en el foro de PHP en Foros del Web. tengo este código que saca datos de mysql como puedo agregarle una paginacion como le puedo aumentar una paginacion Gracias por la ayuda...
  #1 (permalink)  
Antiguo 11/02/2010, 15:30
 
Fecha de Ingreso: enero-2010
Mensajes: 63
Antigüedad: 9 años, 10 meses
Puntos: 1
paginacion en php

tengo este código que saca datos de mysql

como puedo agregarle una paginacion

como le puedo aumentar una paginacion

Gracias por la ayuda

Última edición por nioniconicc; 25/02/2010 a las 14:43
  #2 (permalink)  
Antiguo 11/02/2010, 15:32
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 13 años, 6 meses
Puntos: 2135
Respuesta: paginacion en php

Si buscas en el foro puedes ver muchos paginadores, cualquiera de ellos lo puedes adaptar perfectamente a tu código...
  #3 (permalink)  
Antiguo 11/02/2010, 16:53
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 17 años, 10 meses
Puntos: 29
Respuesta: paginacion en php

Fíjate qué fácil. Imagínate que la web se llama pagina.php y le añades la variable pagina

Ejemplo: pagina.php?pagina=5
Si no existe la variable, la página por defecto será 1. Entonces:
Código PHP:
Ver original
  1. $cuantosRegistrosPorPagina=30;
  2.  
  3. if(isset($_GET['pagina']) {
  4.        $pagina=$_GET['pagina'];
  5. } else {
  6.        $pagina=1;
  7. }
  8.  
  9. $inicioDelLimit=$pagina*$cuantosRegistrosPorPagina;
  10.  
  11. $sql = "SELECT id, autor, titulo, fecha, hora, respuestas, ult_respuesta, ult_hora, ult_autor ";
  12. $sql.= "FROM foro WHERE identificador=0 ORDER BY  id DESC ";
  13. $sql.= "LIMIT ".$inicioDelLimit.", ".$cuantosRegistrosPorPagina;
  14. $rs = mysql_query($sql, $con) or die ("error");

Luego puedes contar los resultados que hay en total (sin contar paginación) y calculas las páginas totales que pueda haber con round():

Código PHP:
Ver original
  1. $sql2 = "SELECT * ";
  2. $sql2.= "FROM foro WHERE identificador=0 ORDER BY  id DESC ";
  3. $resultado = mysql_query($sql, $con) or die ("error");
  4. $totalderegistros=mysql_num_rows($resultado);
  5.  
  6. $totaldepaginas=$totalderegistros / $cuantosRegistrosPorPagina;
  7. round($totaldepaginas);
  8.  
  9. //Imprime todas las páginas:
  10. for($i=1; $i<=$totaldepaginas ; $i++) {
  11.  
  12.       echo " | <a href='pagina.php?pagina=".$i."'>".$i."</a> ";
  13.  
  14. }

Saludos.
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.
  #4 (permalink)  
Antiguo 11/02/2010, 20:46
 
Fecha de Ingreso: enero-2010
Mensajes: 63
Antigüedad: 9 años, 10 meses
Puntos: 1
como mejorar este paginacion

Gracias por layuda

Última edición por nioniconicc; 25/02/2010 a las 14:44
  #5 (permalink)  
Antiguo 11/02/2010, 22:04
Avatar de jackson666  
Fecha de Ingreso: noviembre-2009
Ubicación: Buenos Aires, Argentina
Mensajes: 1.971
Antigüedad: 10 años, 1 mes
Puntos: 65
Respuesta: como mejorar este paginacion

Deberias usar la clausula LIMIT en tu consulta, y los parametros que le pases deberian variar segun la pagina en la que estas...
Porque no buscas un paginador en google, o mismo en la seccion de aportes de este foro?
__________________
HV Studio
Diseño y desarrollo web
  #6 (permalink)  
Antiguo 12/02/2010, 06:47
 
Fecha de Ingreso: junio-2007
Mensajes: 189
Antigüedad: 12 años, 5 meses
Puntos: 3
Respuesta: como mejorar este paginacion

Código PHP:
Ver original
  1. //Imprime todas las páginas:
  2. for($i=1; $i<=$totaldepaginas ; $i++)
  3. {
  4. if ($i > 1)
  5. {
  6. echo '<<< Anterior';
  7. }
  8.       echo " | <a href='pagina.php?pagina=".$i."'>".$i."</a> |";
  9. if ($i < $total_paginas)
  10. {
  11. echo 'Siguiente>>>';
  12. }
  13. }

Clalcular la pagina id es facil, i-- y i++

un saludo
  #7 (permalink)  
Antiguo 12/02/2010, 06:48
Avatar de CHuLoSoY  
Fecha de Ingreso: febrero-2002
Ubicación: Ribeira (Galicia)
Mensajes: 1.900
Antigüedad: 17 años, 10 meses
Puntos: 29
Respuesta: como mejorar este paginacion

Bravo! Ese código tal cual te lo di en otro post ( http://www.forosdelweb.com/f18/pagin...9/#post3278640 ). Y lo puse con la esperanza de que no copypastearas y lo entendieras. No contento con eso, abres otro post para pedir que te lo mejoren. Eso es la ostia.
Yo de mayor quiero ser así también.
__________________
ESQUIO Dominios y Hosting
Las mejores características con los mejores precios.

Etiquetas: paginacion
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 10:47.