Ver Mensaje Individual
  #1 (permalink)  
Antiguo 03/09/2010, 18:21
davidtcsi
 
Fecha de Ingreso: junio-2008
Mensajes: 35
Antigüedad: 16 años, 8 meses
Puntos: 0
paginacion con php ayuda

hola buenas tardes , (es de noche por aqui) como les va, su foro es muy interesante y e visto muchas publicaciones y es muy bueno, sigan asi, felicito a las personas y administradores por tal labor, bueno ahora a lo principal, tengo un problemita, estoy haciendo una pagina web y necesito paginar los articulos de mis web (publicaciones), ya consequi que funcione el rollo es que quiero que los numeros de pagina se muestren de 2 en dos o 3 en 3 etc, es decir 1,2,3,4 luego presione 2, me muestre 1,2,3,4 y asi hasta el 4 al llegar hay que pase el resto de las paginas 4,5,6,7, luego al 7,8,9,... bueno ya saben mas o menos asi aqui les apunto mi codigo.
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
    
}
}
?> 
aqui muestro el nombre de los archivos despues le pongo el codigo para que muestre el contenido, ya se como hacerlo jejejeje
Código PHP:
<?php          
for ($i=$desde$i<$hasta$i++) {
        echo 
$archivos[$i]."<br>"//mostramos los elementos de la pagina en la que estamos. Aqui que cada uno lo haga como buenamente pueda. xD
                    
}
?>
y aqui el codigo de paginacion, lo tengo separado por cuestiones de no me gusta mucho usar el "echo".

Código PHP:
Aqui donde me da el problema que no consigo que me muestre el numero de pagina, como lo explique arriba.

                <?php
                    
for ($j=0$j<$paginas$j++) {
                        
$dexde $j*$mostrar;
                        if(
$j==$desde){
                    
?>
                <b><?php echo $j+1;?></b> <!-- puedo poner $dexde y veo la cantidad de inicio de cada 4 articulos por pagina-->
                <?php    
                        
}
                        else{
?>
                <a href="mainj.php?pagina=<?php echo $dexde?>"><font face="Verdana, Geneva, sans-serif" size="-1.5"><?php echo "&nbsp;".($j+1)."&nbsp;";?></font></a>
                <?php 
                
}
                } 
?>
por favor necesito su ayuda, espero sus respuesta y muchas gracias,