Fehler bei readdir() und closedir() :(

Suchfunktion

Erfahrenes Mitglied
Hallo,

was ist an meiner Anweisung falsch?
PHP:
$dir = 'ftp://localhost/';
$dirh = opendir($dir);

while ($file = readdir($dirh)) {
..
}

closedir ($dirh);

Angezeigt wird mir folgendes:
Warning: readdir(): supplied argument is not a valid Directory resource in C:\apachefriends\xampp\xampp\xampp\htdocs\hesa\modules\mod_installer.php on line 100

Warning: closedir(): supplied argument is not a valid Directory resource in C:\apachefriends\xampp\xampp\xampp\htdocs\hesa\modules\mod_installer.php on line 120

Zeile 100 is die while-Zeile und Zeile 120 ist die mit closedir.

Wo is der Fehler?

$dir ist korrekt, Zugriffsrechte habe ich erstmal auf 777 gesetzt.

Thanks.
 
Hallo!

Wenn ich es mit den 2,5 Wörten Englisch die ich kann richtig verstehe, brauchst du für ftp:// PHP5.
Dann müsste es funktionieren..... zumindest wenn der FTP anonymous Login zulässt.

Gruss Dr Dau
 
Hier mein gesamter Source:
PHP:
$dir = 'ftp://localhost/';
$extension = 'hsm';
$dirh = opendir($dir);

print ('
  <style type="text/css">
	/*Allgemeine Einstellungen*/
	  A{
	    color: #353535;
	    text-decoration: none;
	  }
	  
	  A:hover{
	    color: #353535;
	    text-decoration: underline;
	  }
	
	  A:visited{
	    color: #353535;
	    text-decoration: none;
	  }
	
	  A:visited:hover{
	    color: #353535;
	    text-decoration: underline;
	  }
	
	/*Klassen*/
	  .size {
		  text-align: right;
		}
		.insttbl {
		  font-family: Tahoma, Arial, Sans-Serif;
		  font-size: 11px;
		}	
	</style>
');
print ('
	<table width="500" border="0" class="insttbl">
	  <tr>
	    <td width="100">Name</td>
	    <td width="100">Bezeichnung</td>
	    <td width="100">Version</td>
	    <td width="100">Gr&ouml;&szlig;e</td>
	    <td width="100">Status</td>
	  </tr>
');
while ($file = readdir($dirh)) {
  if ($file != '..' && $file != '.') { 
    $fileinfo = pathinfo ($dir.$file);
    if ($fileinfo['extension'] == $extension) { 
      $filedata = file($dir.$file);
      #include($dir.urlencode($file));
      print ('
				  <tr>
				    <td width="100"><a href="'.$dir.$file.'">'.$file.'</td>
				    <td width="100">&nbsp;</td>
				    <td width="100">&nbsp;</td>
				    <td width="100" class="size">'.filesize($dir.$file).'</td>
				    <td width="100">&nbsp;</td>
				  </tr>
			');
    }
  }
}
closedir ($dirh);
print ('
	</table>
');

Selbe fehlermeldung wie oben..
 
Hmm, also bei mir funktioniert es..... allerdings auch nur als anonymous..... und auch nur wenn der FTP auf Port 21 läuft.
Denn so bald ich mehr wie ftp://adresse/ angebe, funktioniert es nicht mehr.

[edit]
Nur dass jetzt kein Missverständnis aufkommt, ich meinte damit dass der von dir zuletzt gepostete Code bei mir funktioniert.
Natürlich blieb bei mir die Liste leer..... wenn ich "php" anstatt "hsm" nehme, werden mir auch die PHP Files aufgeliestet.
Das Probleme dürfte demnach also ganz woanders stecken.
Getestet mit XAMPP (Apache 2.0.53, PHP 5.0.4 mit safe_mode=on), als FTP habe ich allerdings nicht FileZilla genommen, sondern G6 FTP.
[/edit]
 
Zuletzt bearbeitet:
Hi, habs jetz anders gemacht..
Lasse mir immer ne aufstellung in ner txt-datei auffm server erstellen und lade die txt-datei in meine seite.. trotzdem danke :)
 
Zurück