Jump to content

[SOLVED] PHP ftp send file


KeeganWolf

Recommended Posts

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,

 

$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);

Link to comment
https://forums.phpfreaks.com/topic/180138-solved-php-ftp-send-file/
Share on other sites

The source file is on the webserver.

 

In a web browser scenario a user may upload a file to the webserver via a submission form. Once the file has been uploaded a script may be called (best as a forked process) that takes the uploaded file and ftp's it to another server (could be for backup).

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.