Hallo zusammen,
ich möchte den gesamten Inhalt eines FTP-Verzeichnisses auslesen und ausgeben lassen.
Das funktioniert soweit auch.
Nur eine Sache nicht so ganz.
Und zwar wird beim ersten auflisten der Ordner (vom Root-Verzeichnis) ein Ordner einfach übersprungen.
Ausgegeben wird:
Dateien in / :
test.php
Ordner in / :
changes
Dateien in /changes :
/changes/1.0.txt
/changes/1.0.txt.LCK
Ordner in /changes :
releases
...
Die eigentliche Struktur wäre aber:
Root
/changes
/releases
Hier ist der Code für die Funktion:
	
Was habe ich falsch gemacht ?
Danke schon mal im Vorraus
MfG
					ich möchte den gesamten Inhalt eines FTP-Verzeichnisses auslesen und ausgeben lassen.
Das funktioniert soweit auch.
Nur eine Sache nicht so ganz.
Und zwar wird beim ersten auflisten der Ordner (vom Root-Verzeichnis) ein Ordner einfach übersprungen.
Ausgegeben wird:
Dateien in / :
test.php
Ordner in / :
changes
Dateien in /changes :
/changes/1.0.txt
/changes/1.0.txt.LCK
Ordner in /changes :
releases
...
Die eigentliche Struktur wäre aber:
Root
/changes
/releases
Hier ist der Code für die Funktion:
PHP-Code:
	
	
function get_rlist($dir)
    {
       // Variablen löschen
       unset($list);
       unset($files);
       unset($folders);
       unset($folder);
       unset($file);
       
       @ftp_chdir($this->conn_id, $dir);
       // $dir = aktuelles Verzeichnis
       $dir = ftp_pwd($this->conn_id);
       $list=Array();
       $list=ftp_nlist($this->conn_id, "$dir");
       $files = Array();
       $folders = Array();
       
       for($i = 0; $i != sizeof($list); $i++) {
           $entry = str_replace("//", "", $list[$i]);
           if(@ftp_chdir($this->conn_id, $entry)) {
               $folders[] = $entry;
               ftp_chdir($this->conn_id, $dir);
           }
           else {
               $files[] = $entry;
           }
       }
       
       print "\t<b> Dateien in ".$dir." :</b><br>";
       foreach($files as $file) {
           print $file."<br>";
       }
       
       print "\t<br><b>Ordner in ".$dir." :</b><br>";
       foreach ($folders as $folder) {
           print "\t".$folder."<br>";
           ftp_chdir($this->conn_id, $dir);
           print "<br>";
           $this->get_rlist($folder);
       }
   } 
Was habe ich falsch gemacht ?
Danke schon mal im Vorraus

MfG
          
 Moderator
							
						
							
						
Kommentar