Phpnin Bize Sunduğu Bazı Fonksiyonlar Ftp İle Alakalıdır.
Ftp Fonksiyonları Ftp İle İşlem Görmenizi Sağlar.


Bu Fonksiyonlar Hostunuzdan Başka Hosta Dosya Taşımak İçin Kullanılabilir.
Php Ftpde Dosya Aynalama ( Mirroring ) İşlemi
Bir Dosyayı Aynalamak İçin Bir Dizi Kod Yazmaya Gerek Vardır.


[HIDE]
PHP- Kodu:

// Değişkenleri Ve Bilgileri Ayarlıyoruz



$host="talhakeskin.com.tr";


$user="talha";


$sifre="sifre";


$remotefile"/pub/tsg/teraterm/ttssh14.zip";


$localfile="/tmp/writable/ttssh14.zip";



// Ana Bilgisayara Bağlan



$conn=ftp_connect($host)



if(!$conn)


{


echo" Ftp Servere Bağlanılamadı";


exit;


}echo" Sunucuya Bağlandı $host";



// Ftp De Oturum Aç



@$result=ftp_login($conn, $user,$sifre);



if($result){


echo" Hata, Kullanıcı Adı Veya Şifre Hatalı Oturum Açılamadı";


ftp_quit($conn);


exit;


}



echo" Oturum Açıldı";



// Güncellemenin Gereği Olmadığını ANlamak İçin DOsya Tarihlerini Kontrol Et



echo" Dosya Tarihleri Okundu";



if(file_exits($localgile))


{


$localtime= filetime($localfile);


echo" Tarihler Güncellendi";


echo" Date(" G:i j-m-y", $localtime);


}



else


{


$localtime=0;


$remotetime=ftp_mdtm($conn,$remotefile);


if (!($remotetime>=0))


{


// Bu Dosyanın Orada Olup Olmadığını Göstermezs


// Sunucu Mod, Zamanı Desteklemiyor Olabilir


echo" Sunucu Dosyalarının Tarihi Değişemedi";


$remotetime=$localtime+1; // Güncellemeden Emin Ol


}}


else{



echo" Dosya Tarihleri Güncellendi";


}


if (!($remotetime >$localtime))


{


echo" Bilgisayarınızın Tarihi Doğru Değil";


exit;


}



// dosyaları indir



echo " Dosyalar İndiriliyor";


$fp= fopen($localfile,"w");



if(!$sucsess=ftp_fget($conn, $fp,$remotefile,FTP_BİNARY))


{


echo" Dosyalar İnemedi";


ftp_quit($conn);


exit;


}



fclose($fp);


echo" Dosyalar Başarı İle İndirildi";



// Ana Bilgisayar Bağlantısını Kapat


ftp_quit($conn);






[/HIDE]




Ecet Kodlarımız Bu Kadar Zaten İnceleyince Neyin Ne Olduğunu Sizde Hemen Hemen anlarsınız önce Sunucuya Bağlandık Sonra Dosyaların tarihlerine Baktık Sonra İndirdik;


$remotefile Değişkeni İndirmek İstediğimiz Dostata Giden Yolu İçerir
$localfile Değişkeni Dosyaların İneceği Dizini İfade Eder Dikakt Etmeniz Gereken tmp/writable Adında Bir Dizin Olmalıdır