Ver Mensaje Individual
  #1 (permalink)  
Antiguo 13/02/2008, 21:52
Avatar de TitoCL
TitoCL
 
Fecha de Ingreso: febrero-2008
Ubicación: Curicó
Mensajes: 10
Antigüedad: 17 años, 1 mes
Puntos: 0
recorrer Directorios,Subdirectorios, Mostrar Archivos

Necesito que un script me recorra los directorios y subdirectorios que este tenga mostrandome los archivos ke tiene dentro

encontre el siguiente script que en parte me ayuda... pero faltaria hacerle una modificacion

Código PHP:
<?
// Mostrar
$path ".";
$dir opendir($path);
while (
$elemento readdir($dir))
{
if(
is_dir($elemento) && $elemento != "." && $elemento != ".."){
echo 
"
<table width='52%' border='0' cellspacing='0' cellpadding='2'>
<table width='52%' border='0' cellspacing='0' cellpadding='2'>
<tr>
<td colspan='3' width='40%'><b>$elemento</b><hr></td>
</tr>
;
// Subdirectorios dentro de los directorios
if ($dir2 = @opendir("$elemento/")) {
  while ((
$file2 readdir($dir2)) !== false) {
  
    
$extensiones explode(".",$file2) ;
    
$nombre $extensiones[0] ;
    
$nombre2  $extensiones[1] ;
    
$file_directorio "$elemento/$file2";
    
// Mostramos los resutaltados    
if (!is_dir($file2) && $file2 != "." && $file2 != "..") {
// asignamos el tama?o de los archivo
if(filesize($file_directorio) > 1000000) {
$tamano filesize($file_directorio)/1024/1024;
$tamano ceil($tamano) ;
$tam "$tamano Mb";
}
else { 
if(
filesize($file_directorio) > 1000) {
$tamano filesize($file_directorio)/1024;
$tamano ceil($tamano) ;
$tam "$tamano Kb";

else {
$tamano filesize($file_directorio);
$tamano ceil($tamano);
$tam "$tamano bytes";

}
// fecha de subida del archivo
$elementotiempo filectime("$file_directorio");
$fecha=explode(",",date(",d,m,y,h,i",$elementotiempo));
$fecha="$fecha[1]/$fecha[2]/$fecha[3]";
$fech "$fecha";
// Distingue entre enlazar carpetas o archivos
if (is_dir($file_directorio)) {
$url_directorio "index.php?secciones=$file_directorio";
$target "";
}
else {
$url_directorio $file_directorio ;
$target "target='_blank'";
}
// Imagen
if (is_dir($file_directorio)) {
$imagen_directorio "carpeta";
}
else {
$imagen_directorio $nombre2 ;
}
// Mostramos los resultados
    
echo "<td> <img src='$imagen_directorio.gif' border='0'> <a href='$url_directorio' $target>$file2</a></td>
    <td width='30%'>$tam</td>
    <td width='30%'>$fech</td>
    </tr></tr>"
;
  }
  }
  
closedir($dir2);
  echo 
"<br><br><br>";

}
// fin subdirectorios dentro de los directorios
}

}
closedir($dir);
echo 
"</table></table>";
// secciones
if($secciones == "") { $path3 "."; }
if(
$secciones != "") { $path3 $_GET["secciones"]; }
if(
$secciones != "") { $sec "<a  href='javascript:history.go(-1);'>.. Atras</a><br><br>";}
if(
$secciones != "") { $seccion "<b>$secciones</b><hr>$sec";}

if (
$dir3 = @opendir($path3)) {
echo 
"<table width='52%' border='0' cellspacing='0' cellpadding='2'>
<tr>
<td colspan='3' width='40%'>$seccion</td>
</tr>"
;
  while ((
$file3 readdir($dir3)) !== false && $secciones) {
  
    
$extensiones explode(".",$file3) ;
    
$nombre $extensiones[0] ;
    
$nombre2  $extensiones[1] ;
    
$file_directorio "$secciones/$file3";
    
// Mostramos los resutaltados    
if ($file3 != "." && $file3 != "..") {
// asignamos el tama?o de los archivo
if(filesize($file_directorio) > 1000000) {
$tamano filesize($file_directorio)/1024/1024;
$tamano ceil($tamano) ;
$tam "$tamano Mb";
}
else { 
if(
filesize($file_directorio) > 1000) {
$tamano filesize($file_directorio)/1024;
$tamano ceil($tamano) ;
$tam "$tamano Kb";

else {
$tamano filesize($file_directorio);
$tamano ceil($tamano);
$tam "$tamano bytes";

}
// fecha de subida del archivo
$elementotiempo filectime("$file_directorio");
$fecha=explode(",",date(",d,m,y,h,i",$elementotiempo));
$fecha="$fecha[1]/$fecha[2]/$fecha[3]";
$fech "$fecha";
// Distingue entre enlazar carpetas o archivos
if (is_dir($file_directorio)) {
$url_directorio "index.php?secciones=$file_directorio";
}
else {
$url_directorio $file_directorio ;
}
// Imagen
if (is_dir($file_directorio)) {
$imagen_directorio "carpeta";
}
else {
$imagen_directorio $nombre2 ;
}
// Mostramos los resultados
    
echo "<td> <img src='$imagen_directorio.gif' border='0'> <a href='$url_directorio'>$file3</a></td>
    <td width='30%'>$tam</td>
    <td width='30%'>$fech</td>
    </tr></tr>"
;
  }
  }
  
closedir($dir3);
  echo 
"</table>";
}
// fin secciones
?>
este script sirve para mostrarme los archivos en la siguiente estructura de directorios

tengo este .php en

galeria/directorios.php
galeria/albumes/foto1.jpg foto2.jpg ... etc etc

pero la modificacion que tengo que hacer es porque la estructura que yo uso es la siguiente

galeria/directorios.php
galeria/Usuario1/Album1/foto1.jpg foto2.jpg ... etc etc
galeria/Usuario1/Album2/foto1.jpg foto2.jpg ... etc etc
galeria/Usuario2/Album1/foto1.jpg foto2.jpg ... etc etc
galeria/Usuario3/Album1/foto1.jpg foto2.jpg ... etc etc
galeria/Usuario3/Album2/foto1.jpg foto2.jpg ... etc etc

...blablabla

me imagino que talves haciendo un bucle antes de los demas while para recorrer los directorios de "usuario" funcionaria, intente pero no me resulto, talves la idea era buena pero no lo pude hacer correr xD, a ver si alguien me puede hechar una mano, gracias :)