我要将CSV上传到SFTP服务器中的“incoming”文件夹。我正在使用phpseclib来做到这一点。连接已经存在,但它不输出任何内容。
我不确定我所做的是否正确,因为我以前没有处理过SFTP。这是我的代码的样子:
$file = "leads.csv";
$server = "41.160.150.200";
//$server = "ft.bayport.co.za";
$port = "22";
$username = "";
$password = "";
//username and password removed for security reasons
set_include_path(get_include_path() . PATH_SEPARATOR . 'phpseclib');
include 'Net/SFTP.php';
define('NET_SFTP_LOGGING', NET_SFTP_LOG_COMPLEX); // or NET_SFTP_LOG_SIMPLE
$sftp = new Net_SFTP($server);
// Check SFTP Connection
if (!$sftp->login($username, $password)) {
echo 'Login Failed.';
echo $sftp->getSFTPLog();
}else{
echo 'Connected to SFTP.';
echo $sftp->pwd();
// Upload CSVs to SFTP incoming folder
echo $upload = $sftp->put("incoming/".$file, "./bayport/".$file, NET_SFTP_LOCAL_FILE);
}
我真的很感激任何帮助。谢谢!
答案 0 :(得分:6)
现在我知道脚本有什么问题了。
远程目录网址错误。 “incoming /”应为“/ incoming /”