我尝试使用此代码从本地主机(XAMPP)通过FTP发送文件,但上传的文件已损坏(文件大小较小,无法打开文件img1.png)。 但是,如果我尝试从主机上获取代码,则效果会很好。 我该如何解决该问题?
$server = '**.******';
$username = '*******';
$password = '*******';
print_r($_FILES['fileToUpload']);
$id_connessione = ftp_connect($server);
$login = ftp_login($id_connessione, $username, $password);
$file_originale = $_FILES['fileToUpload']['tmp_name'];
$file_destinazione = $_POST['nomeUser']."_".$_FILES['fileToUpload']['name'];
ftp_chdir($id_connessione, '/upload/');
if (ftp_put($id_connessione, $file_destinazione, $file_originale,
FTP_ASCII)){
echo "successfully uploade";
} else {
echo "problem";
}
ftp_close($id_connessione);
答案 0 :(得分:-1)
您应该使用FTP_BINARY
而不是FTP_ASCII
。
BINARY模式意味着数据在传输过程中不会更改,并且几乎总是您要使用的数据。 ASCII模式可在本地和服务器约定之间转换换行符,并且仅对纯文本文件有用。