Inicio PHP Mis Funciones Paginación simple en php

Paginación simple en php

Viernes, 28-01-2011 01:15 - Leer comentarios - Comentar

Una manera 'facil' de crear una painación
Inicio Anterior 5-6-7-8-9-10-11-12-13-14-15-... Siguiente>> Fin>>
Aquí establecemos las variables y los valores de retorno:
php
//configuración de la paginación
$query = "SELECT count(id) from tabledemo"; // we return the total of rows
$row=mysql_fetch_assoc(mysql_query($query));
$total_records = $row['Total'];//Aqui el total de registros
$records_per_page = 5;//Numero de resultado por pagina
$total_pages = ceil($total_records / $records_per_page);//Total de numeros de paginas
$page = intval($_GET['p']);//Pagina actual
if ($page < 1 || $page > $total_pages) $page = 1;//seguro es un número
$offset = ($page - 1) * $records_per_page;//posicion
$limit = " LIMIT $offset, $records_per_page";//sql que tenemos que añadir -IMPORTANT-
//Fin de la configuración de la paginación
//muestra de datos
$query = "SELECT * from tabledemo $limit "; //query
$result = mysql__query($query);
while ($row=mysql_fetch_assoc($result))
{
echo "showing data ".$row[0];
}
Paginación simple:
php
//Paginación
for ($i = 1; $i <= $total_pages; $i++) {
echo "$i - ";//link a la pagina
}
Paginación con inicio,anterior, siguiente,fin y acortador (en caso de que tenga muchas paginas).
php
$display_pages=10;//numero de links de paginas a mostrar
echo "< < Inicio ";//inicio
if ($page>1) echo " < < Anterior "; //Anterior
for ($i = $page; $i < = $total_pages && $i<=($page+$display_pages); $i++) {
if ($i == $page) echo "$i - ";//no se imprimen en el enlace
else echo "$i - ";//link
}
if (($page+$display_pages)< $total_pages) echo "..."; //etcetera...
if ($page<$total_pages) echo " Siguiente >> ";//Siguiente
echo "
Fin >>";//fin

Comentarios

Miguel - Martes, 15-04-2014 15:28

Hola Adolfo, mandame tu codigo a miguel@goibela.com e intentare responderte lo mas rapido posible, aqui no te deja meter codigo html en los comentarios. Gracias


Adolfo - Lunes, 07-04-2014 22:48

Amigo tengo problema con la siguiente función, solo me muestra el inicio y final, pero no crea nada de paginación, me podrías ayudar?, te dejo mi código:

function listar(){
$numero="SELECT count(idUsuario) FROM usuario";//contamos
$conteo=mysqli_fetch_assoc($this->conn, ($numero));
$total_conteo= $conteo['Total'];//aqui ya tenemos el total de los registros
$resultados_pagina= 5;// numero de resultados por pagina
$total_paginas= ceil($total_conteo/$resultados_pagina);
$pagina= intval($_GET['p']);//pagina actual
if ($pagina $total_paginas) $pagina=1;
$pos=($pagina - 1) * $resultados_pagina;//posicion
$limite= "LIMIT $pos, $resultados_pagina";//fin de la configuracion de la paginacion

$sql="SELECT idUsuario, NombreTipoCliente, NombreUsuario, NombreReal, Apellidos, Nacimiento, Sexo, Estado, Municipio, Direccion, Correo, Telefono, Contrasenia, FechaRegistro FROM catalogo_usuario INNER JOIN usuario ON idCatalogoUsuario = fk_idCatalogoUsuario $limite";
$rs=mysqli_query($this->conn, $sql);
$i=0;
if(mysqli_num_rows($rs)<1){
echo "No hay clientes registrados";
}else{
echo "";
echo "
Permisos
Usuario
Nombre
Sexo
Estado
Municipio
Dirección
Telefono
Modificar
Eliminar
";
while ($row = mysqli_fetch_array($rs)){
echo "".$row["NombreTipoCliente"]."";
echo "".$row["NombreUsuario"]."";
echo "".$row["NombreReal"]."";
echo "".$row["Sexo"]."";
echo "".$row["Estado"]."";
echo "".$row["Municipio"]."";
echo "".$row["Direccion"]."";
echo "".$row["Telefono"]."";

echo '
Editar';
echo "Eliminar";
$i++;
}
}
echo "";
//Paginación
$links=10;//numero de links de paginas a mostrar

echo "< 1) echo " < < Anterior "; //Anterior

for ($i = $pagina; $i ";//fin
}


Ladainian - Viernes, 11-11-2011 01:47

No more s***. All posts of this qluaity from now on


Almena - Martes, 08-11-2011 09:53

Artclies like this just make me want to visit your website even more.


No se permiten comentarios en este momento.