我有“www.mine.com/one”和“www.mine.com/two”。 我想将文件从“www.mine.com/two”上传到“www.mine.com/one”中的“images”文件夹。我不知道如何实现它。我是否需要将文件夹权限更改为777? 我尝试使用ftp协议上传现有文件(img_1.jpg)。
$remote_file = 'http://mine.com/one/images/';
$ftp_host = 'localhost';
$ftp_user_name = 'mine';
$ftp_user_pass = 'mine123';
$local_file = 'http://mine.com/two/uploads/img_1.jpg';
$connect_it = ftp_connect( $ftp_host );
if(ftp_login( $connect_it, $ftp_user_name, $ftp_user_pass )){
if ( ftp_put($remote_file, $local_file, FTP_BINARY ) ) {
redirect('SUCCESS');
}
else {
redirect('FAIL');
}
}
结果总是重定向到'FAIL'。你可以帮帮我吗?
答案 0 :(得分:0)
$remote_file = 'http://mine.com/one/images/';
$ftp_host = 'localhost';
它需要更像远程文件相对于您的ftp根文件夹并且缺少文件名
$remote_file = '/one/images/img_1.jpg';
此外,您错过了ftp_put
的第一个需要资源的参数:
if ( ftp_put($remote_file, $local_file, FTP_BINARY ) ) {
应该是
if ( ftp_put($connect_it, $remote_file, $local_file, FTP_BINARY ) ) {
希望这有帮助, 请在此处查看许多示例和文档:
http://php.net/manual/en/ref.ftp.php
在你的情况下看到这些:
http://php.net/manual/en/function.ftp-put.php和 http://php.net/manual/en/function.ftp-connect.php