Foros del Web » Programando para Internet » PHP »

Paginador de archivos

Estas en el tema de Paginador de archivos en el foro de PHP en Foros del Web. Tengo este codigo para listar los archivos de una carpeta: Código PHP: <?php  function  listarArchivos ( $c , $d ){ global  $file_folder ; $c = ...
  #1 (permalink)  
Antiguo 12/03/2010, 22:29
c0w
 
Fecha de Ingreso: enero-2008
Mensajes: 146
Antigüedad: 11 años, 10 meses
Puntos: 0
Paginador de archivos

Tengo este codigo para listar los archivos de una carpeta:

Código PHP:
<?php 
function listarArchivos($c,$d){
global 
$file_folder;
$c=time() - filemtime($file_folder.'/'.$c);  
$d=time() - filemtime($file_folder.'/'.$d);  
if(
$c==$d) {  
return 
0;
}
return (
$c $d) ? -1;
}
function 
mostrarArchivos($file_folder,$color_claro,$color_oscuro,$color){
$fs = array();
if(@
opendir($file_folder)==''){echo "La carpeta <b>$file_folder</b> no existe.";}else{
$dir opendir($file_folder);
while (
$file_name readdir ($dir)) {
$fs[]=$file_name;
}
usort($fs,"listarArchivos");
foreach(
$fs as $file_name){
if (
$file_name != "." && $file_name != "..") {
$count=$count++;
include 
'filedata.php';
if(
$color=="$color_oscuro"){
$color="$color_claro";
}else{
$color="$color_oscuro";
}
echo 
"<b style=background-color:$color>$file_name</b> - $file_size_round<br>";}
}
closedir ($dir);
}
}

//-------------------------------------------------
$file_folder 'archivos';
mostrarArchivos($file_folder,'#FFFFFF','#CCCCCC',$color_claro);
?>
Como hago un paginador simple?
  #2 (permalink)  
Antiguo 12/03/2010, 22:31
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 10 años, 6 meses
Puntos: 1517
Respuesta: Paginador de archivos

Te sugiero que busques una librería llamada PHPaging.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #3 (permalink)  
Antiguo 12/03/2010, 22:34
 
Fecha de Ingreso: noviembre-2004
Ubicación: NULL
Mensajes: 555
Antigüedad: 15 años
Puntos: 4
Respuesta: Paginador de archivos

Usa esto, simple y funciona 100%

Código PHP:

<?php 

if (!isset($_GET['pag'])) $pag 1// Por defecto, pagina 1
else
$pag $_GET['pag']; 

$tampag 5;
$reg1 = ($pag-1) * $tampag;
$result mysql_query("SELECT * FROM empleado"); 
$total mysql_num_rows($result);
if (
mysql_num_rows($result)){ 
  echo 
"<table border = '1'> \n"
  echo 
"<tr><td>Item 1</td><td>Item 2</td></tr> \n";
  for (
$i=$reg1$i<min($reg1+$tampag$total); $i++) {
    
mysql_data_seek($result$i);
    
$row mysql_fetch_array($result);
    echo 
"<tr><td>".$row["idempleado"].
      
"</td><td>".$row["nombres"]."</td></tr> \n"
  }
  echo 
"</table> \n"
}
else
  echo 
"_";


function 
paginar($actual$total$por_pagina$enlace$maxpags=0) {
  
$total_paginas ceil($total/$por_pagina);
  
$anterior $actual 1;
  
$posterior $actual 1;
  
$minimo $maxpags max(1$actual-ceil($maxpags/2)): 1;
  
$maximo $maxpags min($total_paginas$actual+floor($maxpags/2)): $total_paginas;
  if (
$actual>1)
    
$texto "<a href=\"$enlace$anterior\">&laquo;</a> ";
  else
    
$texto "<b>&laquo;</b> ";
  if (
$minimo!=1$texto.= "... ";
  for (
$i=$minimo$i<$actual$i++)
    
$texto .= "<a href=\"$enlace$i\">$i</a> ";
  
$texto .= "<b>$actual</b> ";
  for (
$i=$actual+1$i<=$maximo$i++)
    
$texto .= "<a href=\"$enlace$i\">$i</a> ";
  if (
$maximo!=$total_paginas$texto.= "... ";
  if (
$actual<$total_paginas)
    
$texto .= "<a href=\"$enlace$posterior\">&raquo;</a>";
  else
    
$texto .= "<b>&raquo;</b>";
  return 
$texto;
}
echo 
paginar($pag$total$tampag"index.php?pag="); 

?>
  #4 (permalink)  
Antiguo 12/03/2010, 22:53
c0w
 
Fecha de Ingreso: enero-2008
Mensajes: 146
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Paginador de archivos

Muchisimas gracias por responder tan rapido.

Pero yo no uso base de datos... uso solo archivos... no hay una forma sin mysql y todo eso?
  #5 (permalink)  
Antiguo 14/03/2010, 11:48
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 10 años, 6 meses
Puntos: 1517
Respuesta: Paginador de archivos

Puedes lograrlo, una forma de hacerlo es ingresando la información en array, usando file y escogiendo cuales vas a mostrar usando arary_slice.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #6 (permalink)  
Antiguo 23/03/2010, 21:02
c0w
 
Fecha de Ingreso: enero-2008
Mensajes: 146
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Paginador de archivos

file seria para pasar todos los archivos a un array y slice para sacar una parte del array. Eso etendi, pero intente y no se me ocurre como hacerlo. Por favor si podes darme una mano y explicarme un poco mejor como añadirlo a mi codigo para mostrar los archivos te agradeceria.. muchisimas gracias igual por responder..
  #7 (permalink)  
Antiguo 24/03/2010, 07:30
 
Fecha de Ingreso: febrero-2009
Mensajes: 580
Antigüedad: 10 años, 10 meses
Puntos: 13
Respuesta: Paginador de archivos

Igual es más facil si pones lo que llevas hecho :)




PD: en Google hay muchos codigos listos para usar, no hagas que alguien te lo haga aqui; sino que te hechen una manita..

Salut
__________________
¿ya conoces la red social de cocina? descubre y comparte recetas de cocina
TONIWEB, un programador web freelance
  #8 (permalink)  
Antiguo 24/03/2010, 13:54
c0w
 
Fecha de Ingreso: enero-2008
Mensajes: 146
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Paginador de archivos

Si, me recorri todo google mas o menos, pero no encuentro paginadores sin mysql. No pido qe me hagan el script tampoco, sino que me den alguna linea basica de como hacerlo funcionar o algo para darme cuenta porque no se me ocurro como hacerlo. Desde ya muchas gracias.
  #9 (permalink)  
Antiguo 24/03/2010, 20:57
Avatar de abimaelrc
Colaborador
 
Fecha de Ingreso: mayo-2009
Ubicación: En el planeta de Puerto Rico
Mensajes: 14.734
Antigüedad: 10 años, 6 meses
Puntos: 1517
Respuesta: Paginador de archivos

Bueno la idea es listar los archivos en un array. Te sugiero que ingreses todos los archivos en un array y luego usas la función array_slice, para recorrer el array. Luego creas unos enlaces que tengan declaradas variables con la información que se necesita para poder volver a recorrer el array con la función array_slice. Te sugiero que leas bien esa función para que veas cuantos parametros son necesarios usar y así puedas moverte. Si tienes complicaciones me dejas saber.
__________________
Verifica antes de preguntar.
Los verdaderos amigos se hieren con la verdad, para no perderlos con la mentira. - Eugenio Maria de Hostos
  #10 (permalink)  
Antiguo 30/03/2010, 11:53
c0w
 
Fecha de Ingreso: enero-2008
Mensajes: 146
Antigüedad: 11 años, 10 meses
Puntos: 0
Respuesta: Paginador de archivos

tengo unas complicaciones:

Código PHP:
<?php 
function listarArchivos($c,$d){
global 
$file_folder;
$c=time() - filemtime($file_folder.'/'.$c);  
$d=time() - filemtime($file_folder.'/'.$d);  
if(
$c==$d) {  
return 
0;
}
return (
$c $d) ? -1;
}
function 
mostrarArchivos($file_folder){
$fs = array();
if(@
opendir($file_folder)==''){echo "La carpeta <b>$file_folder</b> no existe.";}else{
$dir opendir($file_folder);
while (
$file_name readdir ($dir)) {
$fs[]=$file_name;
}
usort($fs,"listarArchivos");
foreach(
$fs as $file_name){
if (
$file_name != "." && $file_name != "..") {
$count=$count++;
$files file($file_name);
}
}
closedir ($dir);
}
}

//-------------------------------------------------
$file_folder 'archivos';
mostrarArchivos($file_folder);
?>
no tengo la menor idea de como hacer el slice :S, probe varias veces pero no me funciona...

Etiquetas: paginador
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 07:38.