ftp_get();
_Philipp_
- php
Hi Leute,
ich brauche mal eure Hilfe. Folgender Programmcode läuft in einem Skript seit geschätzt 1 Jahr ohne Probleme. Seit heute morgen liefert mir das Skript über meine Fehlerfunktion (alert_error();) "Ein Fehler beim FTP-download ist aufgetreten". Wenn ich das Programm solo aufrufe erhalte ich über php die Fehlermeldung
Warning: ftp_get() [function.ftp-get]: Can't build data connection: Connection refused. in /www/htdocs/w0081c46/tv-feed/read_xml.php on line 100
Line 100 entspricht in dem unteren ausschnitt der Zeile //alert_error($local_file[$i]." wurde erfolgreich geschrieben\n");
Serverinfo in der URL.
Ich bin für jeden Tip dankbar.
mfg _Philipp_
//FTP Login
$ftp_server = "ftp.example.de";
$ftp_user = "doesnot";
$ftp_pass = "exist";
// Verbindung aufbauen
$conn_id = ftp_connect($ftp_server) or alert_error("Couldn't connect to $ftp_server");
// Anmeldung versuchen
if (@ftp_login($conn_id, $ftp_user, $ftp_pass)) {
//echo "Angemeldet als $ftp_user@$ftp_server\n";
} else {
alert_error("Anmeldung als $ftp_user nicht möglich\n");
}
//Daten holen
// Variablen definieren
$max=1;
$day[0]=date("d.m.");
$server_file[0] = $day[0]."engl.tv_xml.zip";
$local_file[0] = 'xml/'.$server_file[0];
$max=2;
$day[1]=date("d.m.",time()+(24*60*60));
$server_file[1] = $day[1]."engl.tv_xml.zip";
$local_file[1] = 'xml/'.$server_file[1];
$ftp = FALSE;
// Versuche $server_file herunterzuladen und in $local_file zu speichern
for($i=0;$i<$max;$i++) {
if (ftp_get($conn_id, $local_file[$i], $server_file[$i], FTP_BINARY)) {
//alert_error($local_file[$i]." wurde erfolgreich geschrieben\n");
$ftp = TRUE;
} else {
alert_error("Ein Fehler beim FTP-download ist aufgetreten\n");
$ftp = FALSE;
}
}
// Verbindung schließen
ftp_close($conn_id);
Hi,
Warning: ftp_get() [function.ftp-get]: Can't build data connection: Connection refused. in /www/htdocs/w0081c46/tv-feed/read_xml.php on line 100
Kurzes Googlen nach der Meldung bringt den Verdacht, dass es daran liegt, dass du den aktiven Modus von FTP verwendest - und dein Server aber dem entfernten FTP-Server nicht erlaubt, eine Verbindung aufzubauen.
Probier's mal mit dem passiven Modus. (ftp_pasv())
MfG ChrisB
Hallo Chris,
danke für den Tipp mit dem Passivmodus. Tatsächlich klappt es wenn ich vor dem downloaf auf passiv umstellt. Mich wunderts nur, dass das von einem Tag auf den anderen nicht mehr im aktivmodus funktioniert, obwohl es vorher lange Zeit problemlos gelaufen ist.
Da hat wohl mein Hoster irgendwas an seinem Server umgestellt.
Mfg _Philipp_
Hallo,
Warning: ftp_get() [function.ftp-get]: Can't build data connection: Connection refused. in /www/htdocs/w0081c46/tv-feed/read_xml.php on line 100
Naja, ich würde sagen, der Server verweigert die Verbindung, oder?
Gruß
jobo