3 Files mit ftp_put übertragen klappt nit
Stefan
- php
Moin,
also langsam werd ich blöde. Ich versuche mit folgenden Code in einer Schleife 3 Dateien zu übertragen.
<snipp>
$upload='';
for($i=0;$i<sizeof($fa);$i++)
{
$upload = ftp_put($connect, $fa[$i], $fa[$i], FTP_ASCII);
echo "Übertrage datei ".$fa[$i]."<br />";
}
// Dateien angekommen?
if (!$upload)
{
echo "Ftp Upload-Fehler!";
}
else
{
echo "Dateien $file1, $file2, $file3, auf $host geschrieben";
}
</snipp>
Das klappt aber nicht. Es wird nur die erste Datei (fa[0]) übertragen, außerdem lande ich im else-Zweig der upload-Kontrolle. Im Array fa[] sind alle Namen gelistet. Die Testausgabe in der Schleife bestätigt das auch. Die Files sind auch da. Zum testen nutze ich unter W2kSP3 PHP4.3.2 Apache 1.3.x und als ftp-Server PFTPhttp://home.t-online.de/home/m-roth/pro.html (keine Werbung)
Hat jemand ne Idee woran es hapert?
Danke
Stefan
Moin Moin !
(Am Rande: Willst Du wirklich ASCII-Uploads haben?)
Du prüfst so nur das letzte Ergebnis von ftp_put, nicht jedes. Ist das clever? Du solltest if in die Schleife ziehen und jedes einzelne ftp_put überprüfen.
http://us2.php.net/manual/en/function.ftp-put.php hast Du gelesen, insbesondere was problematisches Verhalten von ftp_put angeht?
Hast Du vielleicht Slashes oder Backslashes in den Dateinamen? Aktives oder passives FTP? Je nach Netzwerk-Verhältnissen klappt mal das eine, mal das andere, mal beides, mal gar keins.
Ich habe in der PHP-Doku auf die schnelle leider keinen Hinweis darauf gefunden, wie man die (letzte) Fehlermeldung vom FTP-Server bekommen kann. Die wäre extrem hilfreich.
Alexander
Auch moin moin,
(Am Rande: Willst Du wirklich ASCII-Uploads haben?)
Ja.
Du prüfst so nur das letzte Ergebnis von ftp_put, nicht jedes. Ist das clever? Du solltest if in die Schleife ziehen und jedes einzelne ftp_put überprüfen.
Stimmt, sollte man tuen, baue ich doch glatt um ;-).
http://us2.php.net/manual/en/function.ftp-put.php hast Du gelesen, insbesondere was problematisches Verhalten von ftp_put angeht?
Stimmt, aber wie sonst? Habe ich was überlesen, oder geht sogar copy().
Hast Du vielleicht Slashes oder Backslashes in den Dateinamen?
Nö.
»»(letzte) Fehlermeldung vom FTP-Server bekommen kann. Die wäre extrem hilfreich.
Im logile des ftp-Servers wird kein Fehler vermerkt ?? Ich werde mal jetzt mal versuchen das Script soweit wie möglich mit debug-Ausgaben zu versehen. Hoffe ich finde den Fehler.
Danke
Stefan