Sending an FTP file
Posted: Tue Nov 03, 2009 9:15 am
I have a quick question about sending an FTP file in PHP. I understand the concept, but I have firewalls to deal with. I need to make sure, does the file actually come directly from the ftp server, or somehow from the users browser itself?
I'm almost sure it's from the ftp server, but here's my code anyhow,
I'm almost sure it's from the ftp server, but here's my code anyhow,
Code: Select all
$ftp_server = "myftp.com";
$ftp_user_name = "user";
$ftp_user_pass = "pass";
$destination_file = "remote.txt";
$source_file = "local.txt";
// set up basic connection
$conn_id = ftp_connect($ftp_server) or die ("Can't connect to FTP Server : $ftp_server");
// login with username and password
$login_result = ftp_login($conn_id, $ftp_user_name, $ftp_user_pass) or die ("Can't login to FTP Server : $ftp_server");
ftp_pasv($conn_id, true);
// check connection
if ((!$conn_id) || (!$login_result)) {
echo "FTP connection has failed!";
echo "Attempted to connect to $ftp_server for user $ftp_user_name";
exit;
} else {
echo "Connected to $ftp_server, for user $ftp_user_name";
}
// upload the file
$upload = ftp_put($conn_id, $destination_file, $source_file, FTP_BINARY);
// check upload status
if (!$upload) {
echo "FTP upload has failed!";
} else {
echo "Uploaded $source_file to $ftp_server as $destination_file";
}
// close the FTP stream
ftp_close($conn_id);