Too Cool for Internet Explorer
Yo uso Google antes de preguntar, y tú? Inicio PHPeru.net SourceForge.net
Ejemplo: Paginando el contenido de un directorio

Comentarios

En esta página puede dejar sus dudas/comentarios sobre este script

Escribir nuevo comentario

Escribir un nuevo comentario

Puedes usar algunos de los tags BBCode más comunes para darle formato a tu comentario (b, i, u, s, url, php).
Antispam por Askimet * Obligatorios

Comentarios publicados

Se han publicado 240 comentarios útiles organizados en 16 página(s).
Hoy recibimos 9 mensajes no deseados (0.01% de un total de 70217 mensajes de SPAM)
El último spammer que pasó por aquí lo hizo hace aproximadamente 39 minutos.
Mostrando del 31 al 45 (Página 3)
02/07/2010 @ 09:50 pm
Comentario de accuththicymn
develops http://connect.mlive.com/user/a1683876/index.html order detrol online defeated http://connect.mlive.com/user/a1683978/index.html order dutasteride online adair http://connect.mlive.com/user/a1684071/index.html order enalapril online perfecting http://connect.mlive.com/user/a1684174/index.html cheap escitalopram denverzoo http://connect.mlive.com/user/a1684330/index.html cheap eldepryl hotelgp
28/06/2010 @ 04:28 pm
Comentario de Harnal Manchola
Gracias por la libreria de paginacion.

Se ve muy bien estructurada.

Fui a colocarla y me arroja un error:

PHPPaging - Error
Hubo un error al intentar ejecutar la paginación de los resultados. Por favor, comuníquese con el responsable de este sitio
27/06/2010 @ 03:59 pm
Comentario de Javier
Hola que tal Marco A. Madueño Mejía, primeramente felicidades por tu gran aplicacion, tengo un par de duda y no se como solucionarla, haber si tu me puedes ayudar.

La primera, cuando estoy en la primer pagina sale asi "1 Siguiente >" y cuando estoy en la ultima queda es esta forma "< Anterior 11"; como lo puedo hacer para que salga

< Anterior 1 Siguiente > y < Anterior 11 Siguiente >

y la otra duda es como puedo lograr que quede en el <?php echo $paging->fetchNavegacion(); ?> de esta manera por ejemplo: < Anterior 2 de 11 Siguiente >

11 es la ultima pagina

Espero que alguien me pueda ayudar

Saludos y gracias de antemano
15/06/2010 @ 11:21 am
Comentario de Gerardo Treviño
Buen dia, actualmente utilizo tu paginador que funciona muy bien pero tengo un problema al enviar las variables, en la parte de $paging->mantenerVar uso un array de valores enviados por checkbox porque utilizo un filtro que forma esto " AND estatus IN (1,2,3) " pero al momento de mantener la variable no las manda .....

Asi es como formo la cadena:

if (isset($_GET['criterio_estatus']) && ($_GET['criterio_estatus']) > 0) {
$lista = NULL; $paso=FALSE;
foreach($_GET['criterio_estatus'] as $row => $rlista)
{
if(!$paso) {$lista = $rlista; $paso=TRUE;}
else $lista = $lista.",".$rlista;
}
$sql .= " AND r.idestatus IN (".fn_filtro($lista).")";
}

No se si me puedas ayudar a resolver esto como pasar las variables entre las paginas.........el error que marca al pasar de pagina es este .... Warning: urlencode() expects parameter 1 to be string, array given in /opt/lampp/htdocs/su-gps_v1.21/include/PHPPaging.lib.php on line 970

Saludos.........
09/06/2010 @ 04:18 pm
Comentario de carlos castro
Deprecated: Function ereg() is deprecated in C:\xampp\htdocs\......\PHPPagi ng.lib.php on line 555
02/06/2010 @ 05:37 pm
Comentario de Gerardo Treviño
Hola, muy bueno tu script, pero tengo un problema no me cambia la pagina solo muestra la primera y abajo las paginas pero al picarle a otra no la cambia, ya intente todo y no puedo =(.
02/06/2010 @ 12:35 pm
Comentario de accuththicymn
furuyamamine http://www.zazzle.com/progressive_1 progressive auto insurance choon http://www.zazzle.com/esurance esurance car insurance punished http://www.zazzle.com/allstate_3 allstate auto insurance matsuo http://www.zazzle.com/safeco safeco auto insurance islamists http://www.zazzle.com/tesco_6 tesco car insurance groundwater
01/06/2010 @ 03:13 am
Comentario de accuththicymn
legitimize http://www.zazzle.com/costa_2 costa bingo online ofactivities http://www.zazzle.com/kayak_3 kayak travel takahisa http://www.zazzle.com/travelocity travelocity hotels overextra http://www.zazzle.com/usaa_3 usaa likes http://www.zazzle.com/geico_1 geico ringtone phoenixville
31/05/2010 @ 09:53 am
Comentario de accuththicymn
keen http://www.zazzle.com/geico_1 geico ringtone motel http://www.zazzle.com/progressive_1 progressive insurance civilian http://www.zazzle.com/esurance esurance car insurance predeceased http://www.zazzle.com/allstate_3 allstate auto insurance fromthe http://www.zazzle.com/safeco safeco auto insurance declines
30/05/2010 @ 05:53 pm
Comentario de accuththicymn
plaza http://www.zazzle.com/quizzle_4 quizzle vicar http://www.zazzle.com/creditsafe creditsafe plus insurance bellows http://www.zazzle.com/aetna_6 aetna dental executives http://www.zazzle.com/assurant assurant health guardband http://www.zazzle.com/medibank medibank life insurance explores http://www.zazzle.com/usaa_3 usaa mortgage genzyme
21/05/2010 @ 02:22 pm
Comentario de xavierlight
Entiendo que es en el array que puedo configurar la paginacion, pero cual de ellos y como?
20/05/2010 @ 04:44 pm
Comentario de xavierlight
Tengo el siguiente codigo como lector de noticias, crea un array de los archivos txt de la carpeta donde estan alojados, luego toma y lee uno por uno los archivos,
al ponerle el phppaging me pagina las noticias, pero las multiplica como si fuera el numero de entradas a mostrar y ademas mantiene el numero de entradas por pagina, quisiera su ayuda, dejo el codigo para ubicar el problema, gracias por su atencion
<!--1-Incluimos la paginacion-->
<?php require_once 'PHPPaging.lib.php';?>

<?php
//Esta función lee todas las noticias disponibles///////////////////////////////////////////////////////////////////
function NuevoListado(){
    
   
$listaNOTICIAS = array();
   
    
//Abrimos la carpeta donde se encuentran los archivos de noticias
    
if ($Carpeta opendir("noticias")) {
        
//Leemos todos los archivos que esten ahi
        
while ($ficheroTXT readdir($Carpeta))  {
            if (!
is_dir($ficheroTXT)) {
               
$listaNOTICIAS[] = $ficheroTXT;
          }
        }
    }    
    
//Invertimos el orden de las noticias, la ultima que se publique aparece de primeras
    
rsort($listaNOTICIAS);
    
    
//Organizamos las noticias, de menor a mayor
    //sort($listaNOTICIAS);
    
    //Terminamos la funcion de NuevoListado    
    
return $listaNOTICIAS;
}

?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
   <title>Noticias</title>
   <link href="css/style.css" rel="stylesheet" type="text/css" />
</head>
<body>
  <div id="main">
    <div id="caption">Noticias</div>
    <div id="contenido">
    
    <?php 
    
//Mostramos los resultados en la pantalla///////////////////////////////////////////////////////////////////////////
    
//la variable "$listado" representa el array creado por la funcion "NuevoListado();"
$listado NuevoListado();    
//Llamamos uno a uno los archivos de la carpeta
foreach ($listado as $noticia) {

// 2-Instanciamos el objeto de la clase
$paging = new PHPPaging;
// 3-Usamos el método agregarArray()
$paging->agregarArray($listado);
// 4-Configurando el script
$paging->porPagina(2); // Noticias por página
// 5-Ejecutamos la paginación
$paging->ejecutar();

    
$Archivo file("noticias/".$noticia);
    
    
//Abrimos uno a uno los archivos de noticias    
    
$ContenidoNoticia "";    
    foreach (
$Archivo as $lectura) {
    
$ContenidoNoticia $ContenidoNoticia.$lectura;
    }

        
    while(
$Archivo $paging->fetchResultado()) { 
    echo 
"<div class='Titulo'>".$TituloNoticia."</div>\n";
    echo 
"<div class='Noticia'>".$ContenidoNoticia."</div>\n<hr size='1'/>\n\n";
    }
}
?>
    
    </div>
    
<div id="paginacion">
<?php
// 7-Pongo los links de paginacion 
$links $paging->fetchNavegacion();
echo 
$links;
?>
</div>

    
  </div>
</body>
13/05/2010 @ 08:29 am
Comentario de nassio
Olvidé leer más adelante. (No estoy acostumbrado a los paginadores) :)

Evidentemente, como dijo joaquin: incluir

<b>sort($archivos)</b>

tras

<b>closedir($dh);</b>

Gracias por esta interesante clase.
13/05/2010 @ 08:16 am
Comentario de nassio
Genial tu paginador.
¿Es posible ordenar las imagenes cuando no proceden de una base de datos?

Si lo tienes previsto sería estupendo.

En caso contrario, si lo consigo, te haré llegar la solucion empleada.

Ah! soy novato en PHP y seguramente necesitará mejoras.

Un saludo desde la vieja España.
08/05/2010 @ 02:16 pm
Comentario de martin
Listo!, se soluciono, las variables que le dije que propague por POST me la está propagando por GET, no me convence mucho el método sin embargo, no hay manera de propagarlo por POST?.

Por ahora lo solucioné con un código del estilo:

if ($_GET["page"] == "") {
$articulo=$_POST["campo1"];
$capacidad=$_POST["campo2"];
$terminacion=$_POST["campo3"];
} else {
$articulo=$_GET["campo1"];
$capacidad=$_GET["campo2"];
$terminacion=$_GET["campo3"];
}

Código PHP

Los comentarios aquí son mostrados usando PHPPaging para paginarlos. Si deseas, puedes ver el código PHP de la paginación:
<?php

/* 
    ESTO ES PARA EL CÁLCULO DE SPAM
    NO TIENE NADA QUE VER CON LA PAGINACIÓN.
*/

    // Calcular el spam recibido
    
$query mysql_query("SELECT COUNT(*) FROM comentarios WHERE estado <> 1");
    
$spam mysql_result($query0);
    
    
$time_gmt_5 time() - 5*3600;
    
$hoy_time gmmktime(000gmdate('m'$time_gmt_5), gmdate('d'$time_gmt_5), gmdate('Y'$time_gmt_5)) + 5*3600;
    
    
// Calcular el spam recibido hoy
    
$query2 mysql_query("SELECT COUNT(*) FROM comentarios WHERE estado <> 1 AND fecha > $hoy_time");
    
$spam_de_hoy mysql_result($query20);
    
    
// Otros cálculos de SPAM
    
$porcentaje_hoy round($spam_de_hoy*100/$spam2);
    
$ultimo mysql_query("SELECT fecha FROM comentarios WHERE estado <> 1 ORDER BY fecha DESC LIMIT 1");
    
$ultimo mysql_result($ultimo0);
    
$ultimo time() - $ultimo;
    if(
$ultimo 59) {
        
$ultimo round($ultimo/600);
        if(
$ultimo 59) {
            
$ultimo round($ultimo/600);
            if(
$ultimo 23) {
                
$ultimo round($ultimo/240);
                
$ultimo "$ultimo día" . ($ultimo <> 's' '');
            } else {
                
$ultimo "$ultimo hora" . ($ultimo <> 's' '');
            }
        } else {
            
$ultimo "$ultimo minuto" . ($ultimo <> 's' '');
        }
    } else {
        
$ultimo "$ultimo segundo" . ($ultimo <> 's' '');
    }
/*
     FIN CÁLCULO DE SPAM
*/

/* La paginación empieza aquí */

// Instanciamos el objeto
$paging = new PHPPaging;

// Indicamos la consulta al objeto 
$paging->agregarConsulta("SELECT * FROM comentarios WHERE estado = 1 ORDER BY fecha DESC");

#$paging->modo('desarrollo');

$paging->porPagina(15);
$paging->mostrarActual(' <b>{n}</b> ');
$paging->linkClase('navbar');
$paging->linkSeparador(false);
$paging->linkSeparadorEspecial("...");
$paging->paginasAntes(33);
$paging->paginasDespues(33);
$paging->mostrarPrimera(false);
$paging->mostrarUltima(false);
$paging->linkAgregar('#comentarios');

// URLs generadas usando mod_rewrite. Estableciendo estructura de links. 
$paging->linkEstructura("comentarios/pagina{n}.html");

if(
$paging->ejecutar()) {
    if(
$paging->numRegistrosMostrados() >= 1) {
        
// Imprimimos estadísticas
        
echo "<div class=\"cnavegacion\">Se han publicado <b>" $paging->numTotalRegistros() . "</b> comentarios <b><u>útiles</u></b> organizados en " $paging->numTotalPaginas() . " página(s).
        <br />
        Hoy recibimos <b>$spam_de_hoy</b> mensajes no deseados (<b>$porcentaje_hoy%</b> de un total de <b>$spam</b> mensajes de SPAM)
        <br />
        El último spammer que pasó por aquí lo hizo hace aproximadamente <b>$ultimo</b>.
        <br />
        Mostrando del "
.$paging->numPrimerRegistro()." al ".$paging->numUltimoRegistro()." (Página ".$paging->numEstaPagina().")</div>";
        
// Imprimimos los resultados
        
while($datos $paging->fetchResultado()) { 
            
?> 
            <div class="<?php echo $datos['usuario'] == 'comentario adminc' 'comentario'?>">
                <cite><?php echo gmdate('d/m/Y @ h:i a'$datos['fecha']-5*3600); //GMT-5 ?></cite>
                <h5>Comentario de <b><?php 
                    
if(!empty($datos['url'])) 
                        echo 
'<a href="'.htmlentities($datos['url'], ENT_QUOTES).'" target="_blank" rel="nofollow">'
                    echo 
htmlentities($datos['nombre'], ENT_QUOTES);
                    if(!empty(
$datos['url'])) 
                        echo 
'</a>';
                
?></b></h5>
                <div class="comentario_cuerpo">
                    <?php echo bbcode($datos['comentario']); ?>
                </div>
            </div> 
            <?php 
        
}
        
// Imprimimos la barra de navegación
        
echo "<div class=\"cnavegacion\">".$paging->fetchNavegacion()."</div>";
    } else {
        echo 
"No se encontraron comentarios publicados";
    }
} else {
    echo 
"No se pudo extraer los datos de la base de datos";
}

?>