Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Listowanie katalogów na serwerze, przy pomocy dir
Less
post
Post #1





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

Ostrzeżenie: (0%)
-----


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

Ten post edytował Less 20.06.2009, 09:08:30
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
athei
post
Post #2





Grupa: Zarejestrowani
Postów: 389
Pomógł: 141
Dołączył: 11.04.2009

Ostrzeżenie: (0%)
-----


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.
Go to the top of the page
+Quote Post
Savage.Mephisto
post
Post #3





Grupa: Zarejestrowani
Postów: 122
Pomógł: 11
Dołączył: 24.01.2008

Ostrzeżenie: (0%)
-----


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. ?>
Go to the top of the page
+Quote Post
Less
post
Post #4





Grupa: Zarejestrowani
Postów: 108
Pomógł: 0
Dołączył: 4.06.2007

Ostrzeżenie: (0%)
-----


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 ".." .
Go to the top of the page
+Quote Post
Wicepsik
post
Post #5





Grupa: Zarejestrowani
Postów: 1 575
Pomógł: 299
Dołączył: 26.03.2009

Ostrzeżenie: (20%)
X----


.. - przejście do niższego katalogu


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

Jesteś w katalogu 3

../../cos.php
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 13:11