如何连接&上传文件到FTP服务器?

时间:2014-07-11 07:26:31

标签: php ftp

我尝试将文件上传到FTP服务器,但我无法连接&无法将文件上传到FTP服务器。我的脚本有问题吗?

<?php

// FTP access parameters:
$host = 'mywebhost';
$usr = 'myusername';
$pwd = 'mypassword';

// file to upload:
$local_file = './ramli.doc';
$ftp_path = '/home/ramli/ramli.doc';

// connect to FTP server (port 21)
$conn_id = ftp_connect($host, 21) or die ("Cannot connect to host");

// send access parameters
ftp_login($conn_id, $usr, $pwd) or die("Cannot login");

// turn on passive mode transfers (some servers need this)
// ftp_pasv ($conn_id, true);

// perform file upload
$upload = ftp_put($conn_id, $ftp_path, $local_file, FTP_ASCII);

// check upload status:
print (!$upload) ? 'Cannot upload' : 'Upload complete';
print "\n";

/*
** Chmod the file (just as example)
*/

// If you are using PHP4 then you need to use this code:
// (because the "ftp_chmod" command is just available in PHP5+)
if (!function_exists('ftp_chmod')) {
    function ftp_chmod($ftp_stream, $mode, $filename){
        return ftp_site($ftp_stream, sprintf('CHMOD %o %s', $mode, $filename));
    }
}

// try to chmod the new file to 666 (writeable)
if (ftp_chmod($conn_id, 0666, $ftp_path) !== false) {
    print $ftp_path . " chmoded successfully to 666\n";
} else {
    print "could not chmod $file\n";
}

// close the FTP stream
ftp_close($conn_id);

?>

0 个答案:

没有答案