【问题标题】:PHP script to upload a file to a FTP将文件上传到 FTP 的 PHP 脚本
【发布时间】:2015-08-19 02:34:28
【问题描述】:

我想将文件 MYFILE.csv 发送到远程 FTP。下面是脚本。连接部分有效,但文件上传无效。我收到“上传时出现问题”消息。

感谢您的帮助。

<?php
$server = 'ftp.website.com' ;//Address of ftp server
$user_name = 'MYUSERNAME'; // Username
$password = 'MYPASSWORD'; // Password

$source_file = '/home/MYFILES.csv'; 
$dest = '/in/';

// set up basic connection
$connection = ftp_connect($server, 21) or die("Couldn't connect to     $ftp_server"); 

echo "can connect";
echo "<br />";
// login with username and password
ftp_login($connection, $user_name, $password) or die("Cannot login");
echo "can login";
echo "<br />";

  // upload a file
  if (ftp_put($connection, $dest, $source_file, FTP_BINARY)) 
 { echo "successfully uploaded \n";} 
  else
  { echo "There was a problem while uploading \n";}

// close the connection
ftp_close($connection);
?>

【问题讨论】:

    标签: php file-upload ftp


    【解决方案1】:

    找到解决方案:

    ?php
    $server = 'ftp.WEBSITE.com' ;//Address of ftp server
    $user_name = 'MYUSERNAME'; // Username
    $password = 'MYPASSWORD'; // Password
    
    $source_file = '/home/MYFILE.csv'; 
    $dest = '/in/MYFILE.csv';
    
    // set up basic connection 
    $connection = ftp_connect($server, 21) or die("Couldn't connect to     $ftp_server"); 
    echo "can connect";
     echo "<br />";
    
    // login with username and password
    ftp_login($connection, $user_name, $password) or die("Cannot login");
    echo "can login";
    echo "<br />";
    // upload a file
    ftp_put($connection, $dest, $source_file, FTP_ASCII) or die ("Cannot upload");
    
    // close the connection
        ftp_close($connection);
        ?>
    

    【讨论】:

      【解决方案2】:

      我看到 dest 文件夹是“/in/”。

      您确定它没有尝试将其放在您的 ftp 的根文件夹中吗? (可能属于root用户,这就是它失败的原因)

      【讨论】: