Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP]Listowanie katalogów na serwerze
Forum PHP.pl > Forum > Przedszkole
Less
Mam prosbe, chciałbym wylistować katalogi w kilku lokalizacjach, uzywam do tego funkcji ze skryptem:

  1. <?php
  2. $mKat=dir($kat);
  3.  
  4.    $l=0;
  5.    while($eNazwa=$mKat->read()){
  6.  
  7.        if($eNazwa!="" AND $eNazwa!=" " AND $eNazwa!="." AND $eNazwa!=".." AND filetype($kat.$eNazwa)=="dir"){
  8.            //is_dir($eNazwa)==true
  9.            $wynik2[]=$eNazwa;                
  10.            $l++;                    
  11.        }
  12.    }
  13.  
  14.    $mKat->close();
  15. ?>


chodzi o to, by wylistował autentyczne katalogi... a nie takie jak "." i ".." (bo i to listuje, bez warunków, ktore wstawilem... a tak na marginesie - do czego to jest ?)

tymczasem jesli katalog jest pusty... to skrypt nadal listuje mi jedno wystąpienie katalogu o wielkosci 4096, jako filetype=dir, co to jest i jak zrobic, aby w takim wypadku nic nie listowało ?


Moze ktos mi pomoze, dzięki.
Less
athei
Niewiele rozumiem z tego co napisałeś, jeśli chodzi Ci o sprawdzenie czy katalog jest pusty to http://www.google.com/search?hl=en&num...mp;oq=&aqi= . Odpowiedź znajdziesz w komentarzach już na 1 stronie.
Savage.Mephisto
Spróbuj dostosować do swoich potrzeb poniższy skrypt:

  1. <?php
  2. $path = $_GET['dir'];  
  3. if ($_GET['dir'] == FALSE) $path = ".";
  4. $current_dir = $path;  
  5. $dir = dir($current_dir);
  6.  
  7. while ($file = $dir->read()) {      
  8.    if($file=="..") echo "";      
  9.    else {
  10.        if (is_dir($path."/".$file)) {
  11.            echo "<a href=\"af.php?dir=".$path."/".$file."\"><img src=\"img/dossier.gif\" /> ".$file."</a><br />";
  12.        }          elseif (is_file($path."/".$file)) {              
  13.            echo "<a href=\"edit_file.php?file=".$path."/".$file."\"><img src=\"img/file.png\" /> ".$file."</a><br />";
  14.        }      
  15.    }  
  16. }  
  17.  
  18. $dir->close();  
  19. echo "<br /><br />";  
  20. echo "ŚCIEŻKA: ".$path;
  21. ?>
Less
Dzięki. Wcisnę, ze pomogłeś, ale chodzilo mi bardziej o wytłumaczenie tego "zjawiska"... sam nie rozumiem, dlaczego tak sie dzieje, ani po co sa katalogi: "." i ".." .
Wicepsik
.. - przejście do niższego katalogu


katalog1/katalog2/katalog3/cos.html
katalog1/cos.php

Jesteś w katalogu 3

../../cos.php
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.