从localhost(Xampp)使用php破坏文件ftp [复制]

问题描述 投票:0回答:1

我尝试使用此代码从localhost(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);
php ftp upload
1个回答
-1
投票

你应该使用FTP_BINARY而不是FTP_ASCII

BINARY模式意味着数据在传输过程中不会更改,并且几乎总是要使用。 ASCII模式在本地和服务器约定之间转换换行符,仅对纯文本文件有用。

© www.soinside.com 2019 - 2024. All rights reserved.