Tengo 100 registros/archivos y quiero mostrar 4 archivos/registros por página, entonces voy a tener 25 páginas.
Lo que quiero en vez de que me a parezca los 20 numeritos 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18, 19 20 21 22 23 24 25 me vayan apareciendo de tres en tres o las primeras 5 y luego de presionar la 5, las otras, el punto es que no quiero que me aparezcan todas, sino algo así como lo tienen aquí en el foro. Aquí les dejo mi código para que me ayuden.
Código PHP:
//contar archivos desde un directorio
$gestor = opendir('Articulo/');
while (false !== ($archivo = readdir($gestor))) {
if($archivo!='.' && $archivo!='..'){
$archivos[] = $archivo;
}
}
$mostrar = 4; //numero de elementos por pagina
$cuantos = count($archivos); //para saber cuantos elementos tiene el array
//$archivos = rsort ($archivos); //para que muestre los nuevos primeros. Totalmente opcional
$paginas = $cuantos / $mostrar; //numero de paginas
if (!isset($mostrar) or empty($mostrar) or !is_int($mostrar)) {
$mostrar = 4; //por si se te olvid?clarar $mostrar o no es entero le damos de valor 5
}
if (empty($_GET["pagina"])) { //si no hay pagina...
$desde = 0; //principio de la primera pagina
$hasta = $desde + $mostrar; //fin de la primera pagina
}
//------------------------
if (!empty($_GET["pagina"])) { //si estamos en una pagina distinta de la primera...
$desde = (int)$_GET["pagina"]; //principio de la pagina X
if ($desde + $mostrar < $cuantos) { //si principio + 10 no es mayor a la cantidad de elementos
$hasta = $desde + $mostrar; //fin de la pagina X
}else{
$hasta = $desde + ($cuantos - $desde); //por si $principio + 10 es superior al numero de elementos
}
}
Código PHP:
<?php
for ($j=0; $j<$paginas; $j++) {
$dexde = $j*$mostrar;
if($dexde==$desde){
?>
<strong class="nLink"><?php echo ($j);?></strong> <!-- puedo poner $dexde y veo la cantidad de inicio de cada 4 articulos por pagina-->
<?php
}
else{
?>
<a class="nLink" href="mainj.php?pagina=<?php echo $dexde; ?>"><?php echo " ".($j)." ";?></a>
<?php
}
}
?>
Código PHP:
<?php if ($desde!=0) { ?>
<a class="nLink" href="mainj.php?pagina=<?php echo "0"; ?>"><font face="Verdana, Geneva, sans-serif" size="-1.5">< inicio de pagina</font></a>
<a class="nLink" href="mainj.php?pagina=<?php echo $desde-4; ?>"><font face="Verdana, Geneva, sans-serif" size="-1.5">< pagina anterior</font></a>
<?php } ?>
<?php if ($cuantos>($desde+4)) { ?>
<a class="nLink" href="mainj.php?pagina=<?php echo $desde+4; ?>"><font face="Verdana, Geneva, sans-serif" size="-1.5">> pagina Siquiente</font></a>
<a class="nLink" href="mainj.php?pagina=<?php echo $cuantos-4; ?>"><font face="Verdana, Geneva, sans-serif" size="-1.5">> pagina final</font></a>
<?php } ?>
Código PHP:
<a class="nLink" href="mainj.php?pagina=<?php echo $cuantos-4; ?>"><font face="Verdana, Geneva, sans-serif" size="-1.5">> pagina final</font></a>