Ver Mensaje Individual
  #2 (permalink)  
Antiguo 12/10/2013, 05:55
Avatar de Cuervoo
Cuervoo
 
Fecha de Ingreso: octubre-2013
Mensajes: 165
Antigüedad: 10 años, 7 meses
Puntos: 43
Respuesta: paginacion de una web

Con la variable de la pagina en la que está, la usas para ver desde qué número de registro tiene que traer, y una consulta que traiga el numero total de registros para ver si hay más.

Algo parecido a esto:

Código PHP:
Ver original
  1. <?
  2. //Cantidad total que trae por pagina
  3. $registros_por_pagina = 20;
  4.  
  5. //Si no existe pag (esta viendo la primer página), la página es 1 y el limit de la consulta empieza en 0
  6. //Si metió fruta en vez de un numero hace lo mismo
  7. if (!isset($_GET['pag']) || !is_numeric($_GET['pag']))
  8. {
  9.     $limit = 0;
  10.     $pag = 1;
  11. }
  12. //Sino, tomamos el numero de la pagina, y el limit es la pagina - 1 * 20.
  13. //Si la pagina es 1, 0 * 20 es 0, empieza desde el principio
  14. //SI es 2, 1 * 20 empieza del 20 (la segunda tanda)
  15. //Y asi 3, 4, etc.
  16. else
  17. {
  18.     $pag = $_GET['pag'];
  19.     $limit = ($pag-1) * $registros_por_pagina;
  20. }
  21.  
  22.  
  23. //Total de registros para ver si hay pagina siguiente o no
  24. $total = funcion_que_trae_el_total();
  25.  
  26.  
  27. $query = "SELECT * FROM publicaciones LIMIT $limit,$registros_por_pagina";
  28. //
  29. //Codigo de la consulta
  30. //
  31.  
  32. //
  33. //Muestra las publicaciones
  34. //
  35.  
  36. //Si hay mas para ver, muestra siguiente
  37. if (($limit + $total_por_pagina) < $total)
  38. {
  39.     //
  40.     //Muestra siguiente $pag + 1
  41.     //
  42. }
  43. ?>

Falta fijarse si el número es mayor a los registros que hay, suponiendo que ponen la pagina 100000 (siempre hay un boludo), que se fije si hay pagina anterior o no, numeros negativos, etc. pero la idea más o menos que se me ocurre es esa.