PHP - AYUDA DUDA PAGINACIÓN

 
Vista:

AYUDA DUDA PAGINACIÓN

Publicado por charly (17 intervenciones) el 07/03/2005 12:34:07
Hago una consulta, en la cual me salen 75 paginas con 10 registros cada una, entonces yo qiero que me saque solo 10 enlaces de paginacion por pagina, y luego un boton de siguiente y otro de anterior que me vaya las 10 siguientes. que tengo que añadir en mi código? es el siguiente:

<? // CODIGO PARA LA PAGINACIÓN DE RESULTADOS
echo "<table border=\"0\" align=\"center\" width=\"100%\">";
echo "<tr>";
echo "<td align=\"center\">";
echo "Páginas: ";
$a = 0;
for ($i = 0; $i < $num_registros; $i = $i + $reg_pagina) {
$a = $a + 1; //incrementamos el numero de pagina
if ($n == $i) {
echo "<b>[" . $a . "]</b> ";
}
else {
echo "<a href=\"empresas.php?num=" . $i ."&buscar=".$buscar. "&poblacion=".$poblacion."§or=".$sector. "&empresa=".$empresa. "\" class=\"paginacion\">[" . $a . "]</a> ";
}
} //for
echo "</td>";
echo "</tr>";
echo "</table>";
?>

La consulta es correcta y todo funciona bien, solo q no qiero qsaque 75 hojas en la misma hoja. Gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Algoritmo

Publicado por webness (59 intervenciones) el 08/03/2005 18:05:25
supongamos que vamos a mostrar inicialmente los numeros del 1 al 10, entonces, mientras que la variable num sea<10, mostrar los diez primeros, puntos suspensivos y al final el 75, pero si la variable num es >=10, entonces mostras, asi, ejemplo num=18
1....,14,15,16,17,18,19,19,20,21,22....75, esto se hace asi.

mira que despues de la pagina selecciona muestro 5 registros, y antes de el muetro 4.
if($num>10 && $num<=($num_registros-5))
{
$max=$num+5;
$min=$num-4;
echo "<enlace con num=1">y puntos suspensivos;
}
else
if($num<10)
{
$ max=11;
$min=0;
}
else
{
$max=$num_registros+1;
$min=$num_registros-9;
}
for($i=$min;$i<$max;$i++)
echo "enlace";

if($max<$num_registros)
echo "..... y en enlace con num=75";

Ese el algoritmo que se me ocurre, si depronto tiene errores deben ser en los iguales es decir <= o >=, porque no lo ensaye, lo unico sierto es que no es una de php sino de algoritmia basica.

Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar