2016-05-19 7 views
0

Ich erstelle eine Exportdatei mit PHP. Nachdem die Datei erstellt wurde, möchte ich sie an einen anderen FTP-Speicherort verschieben. Die Dateierstellung geht gut, auch die FTP-Verbindung scheint gut zu laufen, aber das Übertragen/Hochladen der Datei führt zu einem Fehler.PHP: Die Verwendung von ftp_put führt zu einem Fehler, wie finden Sie den Grund?

Ich habe die Anmeldeinformationen und den Pfad mit Filezilla überprüft und glaube, dass der FTP-Pfad gut ist.

Was läuft mit diesem Code falsch ab oder wie kann ich mehr Feedback vom Code erhalten, um den Grund für einen Fehler zu finden?

Dies ist Teil des Codes. Ich hebe ihn auf, nachdem die Dateierstellung erfolgt (so dies alles geschieht in der gleichen Datei):

fclose($myfile); 

$conn->close(); 

//Move file to ftp-server 
$ftp_server = "ftp.domain.com"; 
$ftp_username = "username"; 
$ftp_userpass = "password"; 
$ftp_conn = ftp_connect($ftp_server) or die("Could not connect to $ftp_server"); 
$login = ftp_login($ftp_conn, $ftp_username, $ftp_userpass); 
$remote_location = "/public_html/testdir"; 
$file = "export.csv"; 

// upload file 
if (ftp_put($ftp_conn, $remote_location, $file, FTP_ASCII)) 
    { 
    echo "Successfully uploaded $file."; 
    } 
else 
    { 
    echo "Error uploading $file."; 
    } 

// close connection 
ftp_close($ftp_conn); 

So ist der Fehler, den ich bekommen ist: „Fehler beim Hochladen export.csv.“ Die Datei befindet sich im selben Verzeichnis wie die PHP-Datei, auf der der Code ausgeführt wird.

Bitte sanft ...

+0

Haben Sie PHP Warnungen aktiviert? Haben Sie Zugriff auf das Serverprotokoll? –

Antwort

1

Soweit ich weiß, die ftp_put 2. Parameter zu akzeptieren, die $ remote_location in Ihrem Beispiel als Dateiname Name kein Verzeichnis/Ordner ist. Diese Variable

ist ungültig angenommen, dass "/ public_html/testdir" ein Verzeichnis ist.

Daher sollten Sie es ändern, um eine Datei zu zeigen: „/public_html/testdir/example.csv“

Grüße

Verwandte Themen