Heim >Backend-Entwicklung >PHP-Problem >Was tun, wenn PHP ftp_put fehlschlägt?
Lösung für den PHP-ftp_put-Fehler: Öffnen Sie zuerst „Upload/Driver/Ftp.class.php“ und verwenden Sie dann die Methode „ftp_pasv($this->link,true);“ Schließlich laden Sie die Datei einfach erneut auf den Client hoch.
Empfohlen: „PHP-Tutorial“
PHP Upload FTP-Treiber ftp_put-Funktions-Upload-Fehlerproblem
2 Server, einer als FTP-Server und einer als Webserver.
Ich verwende die Upload-Klasse von thinkphp3.2 und den Upload-FTP-Treiber, aber jedes Mal wird angezeigt, dass das Speichern der Datei fehlgeschlagen ist.
Ich suche nach der Antwort. Ich habe sowohl asynchron als auch synchron getestet, aber keines davon funktioniert. Die Remote-Verzeichnisse /tmp/ und ftp haben auch 777-Berechtigungen.
Ich denke, PHP sollte später in den offiziellen Dokumenten einige Antworten gefunden haben, einschließlich des Erklärungsmodus
FTP-Server-Aktivmodus, FTP-Server-Passivmodus, ich verwende ftp_pasv($this-> ;link,true); Wechseln Sie in den Passivmodus und der Client kann Dateien reibungslos hochladen.
Hier ist die Lösung
Upload/Driver/Ftp.class.php Sava-Funktion
public function save($file, $replace=true) { $filename = $file['rootPath']. $file['savepath'] . $file['savename']; /* 不覆盖同名文件 */ // if (!$replace && is_file($filename)) { // $this->error = '存在同名文件' . $file['savename']; // return false; // } ftp_pasv($this->link,true); ftp_pwd($this->link); $filename=$file['savename']; if (!ftp_put($this->link, $filename, $file['tmp_name'],FTP_ASCII)) { $this->error = '文件上传FTP错误!'; return false; } return true; }
Das obige ist der detaillierte Inhalt vonWas tun, wenn PHP ftp_put fehlschlägt?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!