Home > PHP, Tips, Tutorial > Function Transfer File Via FTP Account

Function Transfer File Via FTP Account


Pada kesempatan kali ini saya akan memberikan contoh function yang bisa kita gunakan untuk mengirimkan file ke server hostingan via ftp account menggunakan php script. Script ini saya dapatkan dari hasil browsing ketika saya mengharuskan mengirimkan txt file yang telah digenerate di komputer lokal kemudian dikirim ke server hosting. Sebetulnya bisa kita menggunakan FTP Client tapi tentunya lebih ribet karena harus membuka lagi program FTP Client. Langsung saja dicoba function berikut ini.

/* Function ftp_uploaddirectory */
function ftp_uploaddirectory($conn_id, $local_dir, $remote_dir){
@ftp_mkdir($conn_id, $remote_dir);
$handle = opendir($local_dir);
while (($file = readdir($handle)) !== false){
if (($file != ‘.’) && ($file != ‘..’)){
if (is_dir($local_dir.$file)){
ftp_uploaddirectory($conn_id, $local_dir.$file.’/’, $remote_dir.$file.’/’);
} else
$f[] = $file;
}
}
closedir($handle);
if (count($f)){
sort($f);
@ftp_chdir($conn_id, $remote_dir);
foreach ($f as $files){
$from = @fopen(“$local_dir$files”, ‘r’);
@ftp_fput($conn_id, $files, $from, FTP_BINARY);}
}
}

/* File Index.php Kita */
$server = “nama server hosting / ftp account”;
$username=”username ftp / nama subdomain”;
$pass=”password ftp /  subdomain”;
$conn_id = @ftp_connect($server);
@ftp_login ($conn_id, $username, $pass);
ftp_uploaddirectory($conn_id, ‘directory sumber lokal’, ‘direktori tujuan hosting’);
@ftp_quit($conn_id);

Note : Perhatikan direktori tujuan di server hosting, pastikan permission chmod ke 775 untuk server linux.

Semoga Bermanfaat

  1. May 7, 2010 at 10:52 am

    Kemaren gue jg dapet tugas yg sama Ros.
    Alhamdulillah udah bisa dengan bentuk yg sama dengan diatas😀 tapi dengan tambahan cron agar setiap jam 5 pagi file tersebut otomatis pindah ke ftp server.

    • erroz
      May 8, 2010 at 1:40 am

      oh ya penulisan perintah cron seperti apa ? boleh dunk sharing disini riz, biar sekalian gw tau🙂

  1. No trackbacks yet.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

%d bloggers like this: