FTP Problem
Mr. X
- php
Also ich hab ein Problem.
Ich hab eine Routine geshrieben, die rekursiv alle Dateien eines FTP-Servers ausgibt. lokal (mit WarFTP Deamon 1.6.5) grht's wunderbar. Wenn ich es aber mit ftp.cpan.de ausprobiere, geht's nich!
aufruf: filelist.php?host=ftp.cpan.de&name=anonymous&key=x@y.de&passive=0
Hier der Code:
<?PHP
$Query = explode("&", getenv("QUERY_STRING"));
for($i=0; $i < count($Query); $i++)
{
$Name = substr($Query[$i], 0, strpos($Query[$i], "="));
$Wert = substr($Query[$i], strpos($Query[$i], "=") + 1);
$Params[strtolower(urldecode($Name))] = strtolower(urldecode($Wert));
}
unset($Query);
unset($Name);
unset($Wert);
$FTPStream = ftp_connect($Params["host"]);
ftp_login($FTPStream, $Params["name"], $Params["key"]);
ftp_pasv($FTPStream, intval($Params["passive"]));
header("Content-Type: text/plain");
echo "// Automaticaly generated from FileList.php at " . date("l dS F Y H:i:s") . "\n";
GetFiles("", $FTPStream);
global $filenum;
$filenum = 0;
function GetFiles($CurDir, $FTPStream) {
$CurFiles = ftp_nlist($FTPStream, $CurDir);
for($i = 0; $i < count($CurFiles); $i++) {
if(ftp_isDir($FTPStream, $CurDir . "/" . $CurFiles[$i]) == true) {
GetFiles($CurDir . "/" . $CurFiles[$i], $FTPStream);
}
else {
global $filenum;
echo $filenum . ": ". $CurDir . "/" . $CurFiles[$i] . "\n"
$filenum = $filenum + 1;
}
}
}
function ftp_isDir($FTPStream, $Dir) {
$oldErrors = error_reporting();
$oldPath = ftp_pwd($FTPStream);
error_reporting(0);
$ret = ftp_chdir($FTPStream, $Dir);
return $ret;
ftp_chdir($oldPath);
error_reporting($oldErrors);
}
ftp_quit($FTPStream);
?>
Thx.
Hi,
Also ich hab ein Problem.
dann wird eine Problembeschreibung benötigt.
Ich hab eine Routine geshrieben, die rekursiv alle Dateien eines FTP-Servers ausgibt. lokal (mit WarFTP Deamon 1.6.5) grht's wunderbar. Wenn ich es aber mit ftp.cpan.de ausprobiere, geht's nich!
Und Deine Problembeschreibung ist...?
Cheatah
...Keine!!!
Er gibt den Header (mit Datum und so) aus. Danach folgt:
: /pub//pub/mysql
1: /pub//pub/linux
2: /pub//pub/apache
3: /pub//pub/perl
4: /pub//pub/network
5: /pub//pub/CPAN
Thx!
Hi!
Nochwas: manchmal sagt er auch '<b>Fatal error</b>: Maximum execution time of 30 seconds exceeded in <b>C:\Web\Test\onlineFTP\explorer\filelist2.php</b> on line <b>28</b>' Ich kenne leider nicht viele ftp SServer zum testen. Ich habs bei lycos probiert - da hats geklappt (waren aber auch nur 20 Dateien...)
Thx.