Paginando el contenido en PHP
Escrito por J.F. el Miércoles, 4 de Julio del 2007 a las 18:34
¿Alguna vez has visto la típica barra de navegación "Primera Página 1 2 3 ... Última" y te has preguntado como demonios se hace? Pues es fácil, usando un script llamado Paginator. Su uso es bien sencillo, como hemos visto en anteriores ocasiones, tán solo habrá que incluir el fichero en cuestión haciendo la llamada con un include.Una vez incluido el script, le asignaremos a la variable $_pagi_sql una SELECT que no tenga la claúsula LIMIT, pues ya viene definida en el script. Veamos un ejemplo de extracción de datos de una base de datos(el código es el mismo ejemplo que el de la página del autor), la sintáxis sin paginación sería la siguiente:
-
//Conexión a la base de datos
-
-
//Sentencia sql (sin limit)
-
$sql = "SELECT nombre FROM clientes WHERE sexo='m' ORDER BY edad";
-
-
//Ejecutamos la consulta
-
-
//Leemos y escribimos los registros
-
}
Bien, para paginar el resultado, bastaría con hacer lo siguiente:
-
//Conexión a la base de datos
-
-
//Sentencia sql (sin limit)
-
$_pagi_sql = "SELECT * FROM clientes WHERE sexo='m' ORDER BY edad";
-
-
//cantidad de resultados por página (opcional, por defecto 20)
-
$_pagi_cuantos = 10;
-
-
//Incluimos el script de paginación. Éste ya ejecuta la consulta automáticamente
-
include("paginator.inc.php");
-
-
//Leemos y escribimos los registros de la página actual
-
}
-
-
//Incluimos la barra de navegación
¿Fácil no? Solamente debes descargarte el Paginator, y seguir éstas sencillas pautas. Hay otras variables, como especifica el autor en su página, que sirven para adaptar el Paginator a nuestro gusto.
1. $_pagi_cuantos: Entero. Número de resultados que queremos obtener por cada página. Si no se define esta segunda variable, será por defecto 20.Disponible desde la versión 1.0
2. $_pagi_nav_num_enlaces: Entero. Cantidad de enlaces a los números de página que se mostrarán como máximo en la barra de navegación. Por defecto se muestran todos. Disponible desde la versión 1.3
3. $_pagi_mostrar_errores: Booleano. Define si se muestran o no los errores de MySQL que se puedan producir. Por defecto está en "true". Disponible desde la versión 1.3
4. $_pagi_propagar: Array de cadenas. Contiene los nombres de las variables que se quiere propagar por el url. Por defecto se propagarán todas las que ya vengan por el url (GET). Disponible desde la versión 1.4
5. $_pagi_conteo_alternativo: Booleano. Booleano. Define si se cuentan los registros desde PHP con mysql_num_rows() (true) o desde MySQL como se venía haciendo hasta ahora con COUNT(*) (false). Por defecto está en false. Recomendable mantener en false a menos que dé errores de conteo o resultados no esperados. Disponible desde la versión 1.5
6. $_pagi_nav_estilo: Cadena. Contiene el nombre del estilo CSS para los enlaces de paginación. Por defecto no se especifica estilo.
7. $_pagi_nav_anterior: Cadena. Contiene lo que debe ir en el enlace a la página anterior. Puede ser un tag . Por defecto se utiliza la cadena "« Anterior".
8. $_pagi_nav_siguiente: Cadena. Contiene lo que debe ir en el enlace a la página siguiente. Puede ser un tag . Por defecto se utiliza la cadena "» Siguiente".
Incluir el Paginator. A partir de aquí, quedan disponibles las siguientes variables:
1. $_pagi_result : Que contiene el id del resultado de la consulta para los registros de la página actual, listo para pasarlo por alguna función tipo mysql_fetch_array().
2. $_pagi_navegacion : Que contiene la "barra de navegación" para poder acceder a las diferentes páginas.
3. $_pagi_info : Cadena que contiene información sobre los registros de la página actual. Ejemplo: "desde el 16 hasta el 30 de un total de 123";
Créditos y descarga del script: | Jorge Pinedo, Autor del script
Categoria: PHP
- Añadir este post a
- Del.icio.us -
- Meneame -
- Digg -
- Webeame
Entradas relacionadas
Deja un comentario

