Ejemplo práctico de paginación de resultados en Php

<?php
mysql_connect("localhost", "root", "");
mysql_select_db("dev");
$noRegistros = 3; //Registros por página
$pagina = 1; //Por default, página = 1
if($_GET["pagina"]) //Si hay página por ?pagina=valor, lo asigna
    $pagina = $_GET["pagina"];
echo "Pagina: ".$pagina."<hr>";

//Utilizo el comando LIMIT para seleccionar registros
$sSQL = "SELECT * FROM alumnos LIMIT ".($pagina-1)*$noRegistros.",$noRegistros";
$result = mysql_query($sSQL) or die(mysql_error());
while($row = mysql_fetch_array($result)) { //Exploracion comun de registros
    echo $row["nombre"]."<br>";
}

//Imprimiendo páginas
$sSQL = "SELECT count(*) FROM alumnos"; //Cuento el total de registros
$result = mysql_query($sSQL);
$row = mysql_fetch_array($result);
$totalRegistros = $row["count(*)"]; //Almaceno el total en una variable

echo "<hr>Total registros: ".$totalRegistros.", Pagina: ";

$noPaginas = $totalRegistros/$noRegistros; //Determino la cantidad de páginas
for($i=1; $i<$noPaginas+1; $i++) { //Imprimo las páginas
    if($i == $pagina)
        echo "$i "; //A la página actual no le pongo link
    else
        echo "<a href=\"?pagina=".$i."\">".$i."</a> ";
}
?>

16 Thoughts on “Paginación de resultados con Php y MySql

  1. harold on junio 1, 2014 at 9:59 pm said:

    excelente.

    Al darle estilo queda mucho mejor !!

  2. disculpa gran tutorial excelente pero un detalle no me muestra los registros y lo tengo idéntico a que se pude deber

  3. romualdo on octubre 8, 2013 at 2:30 pm said:

    Quisiera comentar que esta muy bueno tu sistema de paginacion, claro que complicas algunos temas que podrias mostrar de un modo mejor pero te agradesco de todo corazon….

  4. Excelente tutorial

  5. Gustavo on julio 26, 2013 at 6:43 pm said:

    Me sirvio el ejemplo !!! muchas gracias

  6. Marcos on junio 12, 2013 at 3:28 pm said:

    Excelente!!!!
    cómo podría agregar los botones Siguiente página y Próxima página.

    Muchas gracias

  7. abraham on enero 17, 2013 at 1:06 pm said:

    Es un excelente ejemplo, gracias! :)

  8. Very interesting site. I found it on Yahoo. I will definately recommend it to my friends. Please keep up the great work!

  9. Greetings I located your webpage by mistake when i searched AOL for this topic, I must express your webpage is really very helpful I also really like the layout, it is awesome!

  10. :S creí que aceptada toda la sintáxis de los emoticonos *-) ¿cómo haces para que aparezcan los que aparecen? :)

  11. Hago una prueba (Y)

  12. Ahora sin pude acceder sin problema alguno… refelicidades ;)

  13. Clara Moncada on octubre 5, 2010 at 8:02 am said:

    Me aparece un mensaje, hice una impresión de pantalla y te la envío por el FB… no te contesté antes porque me desconecté de la laptop hasta ahora…

    … veré si le entiendo a tu código, por la noche :S ya que debo terminar de corregir unos trabajos de los estudiantes, sin embargo, te felicito, es bueno que sigas creando.

    Una pregunta, ¿te parece que WordPress es mejor como página?… un abrazotote, tkm

  14. gracias nacho! si funciono! ya por fin lo entiendo hehe gracias!

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos necesarios están marcados *

Puedes usar las siguientes etiquetas y atributos HTML: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Post Navigation