Hola amigos, necesito su ayuda para poder hacer que la funcion que estoy realizando pueda paginar los resultados que obtiene de la consulta, pero no la he podido hacer funcionar correctamente, les pido su ayuda por favor.
Gracias.
Código PHP:
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 < 1 || $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 "<table border='0' align='center' class='flat-table flat-table-1'>";
echo "<thead>
<th>Permisos</th>
<th>Usuario</th>
<th>Nombre</th>
<th>Sexo</th>
<th>Estado</th>
<th>Municipio</th>
<th>Dirección</th>
<th>Telefono</th>
<th>Modificar</th>
<th>Eliminar</th>
</thead>";
while ($row = mysqli_fetch_array($rs)){
echo "<td align='center'>".$row["NombreTipoCliente"]."</td>";
echo "<td align='center'>".$row["NombreUsuario"]."</td>";
echo "<td align='center'>".$row["NombreReal"]."</td>";
echo "<td align='center'>".$row["Sexo"]."</td>";
echo "<td align='center'>".$row["Estado"]."</td>";
echo "<td align='center'>".$row["Municipio"]."</td>";
echo "<td align='center'>".$row["Direccion"]."</td>";
echo "<td align='center'>".$row["Telefono"]."</td>";
echo '<td align="center">
<a class="fancybox fancybox.iframe" href="../fancy/mod_usuario.php?id='.$row["idUsuario"].'&nombretipocliente='.$row["NombreTipoCliente"].
'&nombreusuario='.$row["NombreUsuario"].'&nombrereal='.$row["NombreReal"].
'&apellidos='.$row["Apellidos"].'&nacimiento='.$row["Nacimiento"].
'&sexo='.$row["Sexo"].'&estado='.$row["Estado"].'&municipio='.
$row["Municipio"].'&direccion='.$row["Direccion"].'&correo='.$row["Correo"].'&telefono='.$row["Telefono"].'&contrasenia='.$row["Contrasenia"].'
&fecharegistro='.$row["FechaRegistro"].'" >Editar</a></td>';
echo "<td><a href='../control/controlador_usuario.php?eliminar=si&codigo=".$row["idUsuario"]."'>Eliminar</a></td></tr>";
$i++;
}
}
echo "</table>";
//Paginación
$links=10;//numero de links de paginas a mostrar
echo "<a title='Start' href='?p=1'>< < Inicio</a> ";//inicio
if ($pagina>1) echo "</a><a title='Anterio' href='?p=".($pagina-1)."'> < < Anterior </a> "; //Anterior
for ($i = $pagina; $i <= $total_paginas && $i<=($pagina + $links); $i++) {
if ($i == $pagina) echo "<strong>$i - </strong>";//no se imprimen en el enlace
else echo "</a><a title='pagina $i' href='?p=$i'>$i</a> - ";//link
}
if (($pagina+$links)< $total_paginas) echo "..."; //etcetera...
if ($pagina<$total_paginas) echo "<a title='Siguiente' href='?p=".($pagina+1)."'> Siguiente >> ";//Siguiente
echo "<a title='Fin' href='?p=$total_paginas'>Fin >></a>";//fin
}