Está usted en Indice > Construcción > Lenguajes > PHP > Lecciones y Paso a Paso > Paginacion en PHP
Construcción
Maletín
Utilidades
Cursos
Promoción
Rentabilidad
Zona Novatos
Foros
Acceso a tu cuenta

Paginacion en PHP (2)

Como ven realizamos 2 consultas similares en cuanto a su criterio de selección ("WHERE visible = 1"). Con la primer consulta obtenemos el número de resultados totales...

$resultados = mysql_query("SELECT id FROM artículos WHERE visible = 1");

$total_registros = mysql_num_rows($resultados);

Ese dato de $total_registros nos sirve para poder determinar la cantidad de páginas. La segunda consulta tiene en el SQL dos elementos a analizar, el primero es el ORDER BY que lo que hace es ordenar los resultados por fecha y de forma descendente ("DESC") en caso contrario usaríamos "ASC".

El segundo elemento a ver es LIMIT $inicio, $registros esa cláusula SQL cumple la función de limitar los resultados devueltos, el primer valor pasado como parámetro indica desde que registro empezar a devolver los resultados y el segundo parámetro indica la cantidad de registros que debe devolver desde $inicio.

Luego solo queda el bucle que devuelve los resultados...

while($artículo=mysql_fetch_array($resultados)) {

   echo "<b>".$artículo["titulo"]."</b><br>";
   echo "<font color='#666666'>".$artículo["descripcion"]."</font><br><br><br>";

}

Como parte final nos queda lo que seria el navegador de páginas...

paginacion-php-navegador.gif

El código del navegador de páginas se divide en tres partes, primero la que muestra el link a la página anterior

if(($página - 1) > 0) {
     echo "<a href='páginacion.php?página=".($página-1)."'>< Anterior</a> ";

}

El link a la página anterior será visible siempre y cuando no estemos en la primer página ($página - 1) > 0). La segunda parte del navegador de páginas seria la que muestra la cantidad de páginas...

for ($i=1; $i<=$total_páginas; $i++){
   if ($página == $i)
      echo "<b>".$página."</b> ";

} else {
      echo "<a href='páginacion.php?página=$i'>$i</a> ";
}

Y la tercera parte es la que muestra el enlace a la página siguiente...

if(($página + 1)<=$total_páginas) {

     echo " <a href='páginacion.php?página=".($página+1)."'>Siguiente ></a>";
}

En este caso muestra el enlace siempre y cuando no estemos en la última página (($página + 1)<=$total_páginas).




Autor: Mauro Rondinelli
http://elguruprogramador.com.ar/zonas/ver.asp?cod=116

Usuarios que han visto este tema también han visto...

- Guardar y extraer imágenes en MySQL con PHP
- Howto encriptar passwords en la base de datos
- De segundos a horas, minutos y segundos con PHP
- Nube de etiquetas a partir de una base de datos
- Conversor de monedas con PHP


Versión imprimible - Versión imprimible de este documento
Enviar e-mail - Enviar por e-mail este documento
Publicidad






Cursos de Community Manager

Información legal | Política de Privacidad | Contacte con nosotros

Otro proyecto de Factoría de Internet. Copyright© 2003-2011 Factoría de Internet S.L.. Todos los derechos reservados.


Página generada el 26-05-2012 a las 04:51:35