PHP ftp_put失败

xec*_*ner 4 php ftp file-upload

我通过FTP上传XML文件:

$ftp = "ftp";
$username = "username";
$pwd = "password";
$filename = $_FILES[$xyz][$abc];
$tmp = $_FILES['file']['tmp_name'];
$destination = "/Content/EnquiryXML ";

$connect = ftp_connect($ftp)or die("Unable to connect to host");
ftp_login($connect,$username,$pwd)or die("Authorization Failed");
echo "Connected!<br/>";              

if(!$filename)
{
    echo"Please select a file";
}

else
{
    ftp_put($connect,$destination.'/'.$filename,$tmp,FTP_ASCII)or die("Unable to upload");
    echo"File successfully uploaded to FTP";
}
Run Code Online (Sandbox Code Playgroud)

我想将使用创建的XML文件发送DOMDocument到FTP服务器,但我无法.

ftp_put返回false.

Mar*_*ryl 17

的有问题的最典型的原因ftp_put(或任何其他转移命令等ftp_get,ftp_nlist,ftp_rawlist)是PHP默认为激活模式.在99%的情况下,必须切换到被动模式,以使传输工作.使用该ftp_mlsd功能.

$connect = ftp_connect($ftp) or die("Unable to connect to host");
ftp_login($connect, $username, $pwd) or die("Authorization failed");
// turn passive mode on
ftp_pasv($connect, true) or die("Unable switch to passive mode");
Run Code Online (Sandbox Code Playgroud)

也可以看看: