文件没有上传到FTP和错误:警告:ftp_put()[function.ftp-put]:无法打开该文件:没有这样的文件或目录。我们使用以下代码:
$server = 'ftp.domain.com';
$ftp_user_name = 'upload@domain.com';
$ftp_user_pass = 'password';
$dest = 'files/test.txt';
$source = 'test.txt';
$src = ini_get("upload_tmp_dir");
$connection = ftp_connect($server);
$login = ftp_login($connection, $ftp_user_name, $ftp_user_pass);
if (!$connection || !$login) { die('Connection attempt failed!'); }
$upload = ftp_put($connection, $dest, $source, FTP_BINARY);
if (!$upload) { echo 'FTP upload failed!'; }
ftp_close($connection);
答案 0 :(得分:26)
这是php.net对ftp_put的评论的回答:
发现概率,您无法将路径放到目标文件中 (尽管我可以在dos ftp客户端中执行此操作...?)
e.g。 - 这不起作用
ftp_put($conn, '/www/site/file.html','c:/wamp/www/site/file.html',FTP_BINARY);
你必须把
ftp_chdir($conn, '/www/site/');
ftp_put($conn,'file.html', 'c:/wamp/www/site/file.html', FTP_BINARY );
答案 1 :(得分:1)
我有同样的问题,我使用ftp_nb_put()解决了它。相同的功能,但它允许您的程序运行更多的连接或东西: - )