Dateien aus ordner listen!

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Dateien aus ordner listen!

    Hi
    ich habe zwar danach gesucht aber nicht das gefunden was ich gesucht habe. Ich habe ein einfaches Problem, ich brauche ein php script das mir alle dateien(egal welcher typ) aus einem ordner untereinander auflisten lassen und sie sollen als hyperlink zu der entsprechenden datei gelistet sein. Ich benötige das Script um in einem Downloadbereich nicht jede datei neu eintragen zu müssen. Wäre super wenn mir jemand helfen könnte, da ich leider nur wenig ahnung von php habe.

    Danke schonmal im vorraus!

  • #2
    PHP-Code:
    <?php

    $path 
    $_SERVER[DOCUMENT_ROOT];


    $dirs = array();
    $files = array();
    $dh opendir($path);
    while (
    false !== ($file readdir($dh))) {
        if (
    substr($file01) != ".") { 
            if (
    is_dir($file)) {
                
    $dirs[] = $file '/';
            } else {
                
    $files[] = $file;
            }
        }
    }
    closedir($dh);

    // diese 3 Zeilen weg, wenn Ordner nicht angezeigt werden sollen
    natcasesort($files);
    natcasesort($dirs);
    $files array_merge($dirs$files);

    foreach (
    $files as $file) {
        echo 
    "<a href='$file'>$file</a><br />\n";
    }

    ?>

    Kommentar


    • #3
      ich hätte da auch noch ne alternative im angebot ;-)
      PHP-Code:
      <?
      $used=0;
      function show_dir($dir, $pos=2, &$used)
      {  
        if($pos == 2)
          echo "<hr><pre>";

        $handle = opendir($dir);
        while ($file = readdir ($handle))
        {
          if (eregi("^\\.{1,2}$",$file))
            continue;

          if(is_dir($dir."/".$file))
          {
            printf ("% ".$pos."s <b>%s</b>\n", "|+", $file);
            show_dir($dir."/".$file, $pos + 3);
          }
          else
          {
            $fsize = filesize($dir."/".$file);
            $used += (float)$fsize;
            
              $size = ((float)$fsize)/1024;
            sprintf ("% ".$pos."s %s - size: %01.2f kb\n", "|-", $file, $size);
          }
        }
        closedir($handle);

        if($pos == 2)
          echo "</pre><hr>";
      }  

      show_dir(".", 2, $used);

      $kb = $used;
      $used = ((float)$used)*1024;
      $mb = ((float)$kb)/1024;
      echo "<pre>";
      echo "used (".$used." bytes):<br>";
      echo " |- in kb: ".$kb."<br>";
      echo " |- in mb: ".$mb."<br>";
      ?>

      Kommentar

      Lädt...
      X