[php] Verzeichnisbrowsing

quicksilver

Lt. Junior Grade
Registriert
Jan. 2004
Beiträge
363
Ich habe dieses Verzeichnislisting erstellt und würde gerne nun es möglich machen das ich auch verzeichnisse angezeigt bekomme.. und mich in diesen bewegen kann und nur die dateien angezeigt werden die sich in dem Array befinden.

PHP:
<?php
echo"
<TABLE align=\"center\" WIDTH=\"40%\">
<TR>
<TD><B>Name</B></TD>
</TR>";

$files = array("exe","rar","zip");

if ($dirname = opendir("."))
{
  $count = "0";
  while ($filename = readdir($dirname))
  {

   $endung = pathinfo($filename);
    if (in_array($endung["extension"],$files))
    {
    echo"<TR>";
    echo "<TD><A HREF=\"?datei=".$filename."\">".$filename."</A></TD>";
    echo"</TR>";
    $count++;
    }

  }
  echo "</table>";
  echo "<br /><div align=\"center\">Anzahl Dateien: ".$count."</div>";
  closedir($dirname);
}
?>
 
Hallo quicksilver,

dazu musst du Abfragen abfragen ob es sich bei $filename umd ein verzeichnis handelt.
PHP:
if (in_array($endung["extension"],$files))
    {
    echo"<TR>";
    echo "<TD><A HREF=\"?datei=".$filename."\">".$filename."</A></TD>";
    echo"</TR>";
    $count++;
    }
    elseif (is_dir($filename))
    {
         //Ausgabe
     }

Grüße

tewes
 
Und wie bewege ich mich dann in den Verzeichnissen hin und her?
Das ich dort reingehen kann.. und die Files dort angezeigt bekomme usw?
 
Habe ich schon probiert aber dann geht er nur in eine verzeichnistiefe :(
 
Verzeichnisse geht man am besten rekursiv durch:
PHP:
function print_dir_rec($dirname, $depth=1) {
    // opendir
    // while entries ...
        // if is_dir -> print_dir_rec($dirname . $entry, $depth+1);
        // else zeige eintrag
}
print_dir_rec(dirname(__FILE__));
 
hm naja schon klar ;) und das ist glaub mein problem sonst hätte ich das schon realisiert
 
Ich hab das nun soweit.. aber leider geht er nur in das verzeichnis und zeigt dann dort drin keine ordner mehr an :(

PHP:
<?
$filetypes = array("exe","rar","zip");

if (is_dir($_GET["folder"])) { $folder=$_GET["folder"];} else {$folder =".";}

if ($dirname = opendir($folder))
{
  $count = "0";
  while ($filename = readdir($dirname))
  {

   // Bilder
   $endung = pathinfo($filename);
    if (in_array($endung["extension"],$filetypes))
    {?>
    <TR>
    <TD><A HREF="?datei=<?=$filename?>"><?=$filename?></A></TD>
    </TR>
    <?
    $count++;
    }
    elseif (is_dir($filename) AND $filename != "admin" AND $filename != "..")
    {?>
    <TR>
    <TD><A HREF="?folder=<?=$folder."/".$filename?>"><?=$filename?></A></TD>
    </TR>
     <?}

  }?>
  </table>
  <br /><div align="center">Anzahl Dateien: <?=$count?></div>
  <?
  closedir($dirname);
}

?>
 
Kann mir keiner ein Tip geben?

Hmmm nieemand? :( ?
 
Zuletzt bearbeitet:
Zurück
Oben