FTP Kodları

Aşk'a İnanmışt'ı

Genel Yönetici
Staff member
Katılım
28 Mart 2008
Mesajlar
23.243
Tepki puanı
2.147
Puanları
163
Yaş
40
Bulunduğu Yer
ŞANLIURFA
Tuttuğu Takım
GALATASARAY
PHP - FTP Fonksiyonları
FTP File Transfer Protocol (Dosya Transfer Protokolü) ünü temsil etmektedir.
Aşağıdaki sabitler FTP Modülü (FTP_ASCII, ve FTP_BINARY) kullanıldığı zaman tanımlıdırlar.
Bu komutların işlenebilmesi için scriptin başına

dl("php3_ftp.dll");
ifadesi eklenmelidir.

FTP Fonksiyonları :

ftp_connect : FTP bağlantısı açar.
ftp_login : Bir FTP bağlantısına login yapar.
ftp_pwd : O an içinde bulunulan klasör ü döndürür.
ftp_cdup : içinde bulunulan klasörü değiştirir.(bir üst klasöre geçer.)
ftp_chdir : FTP serverindaki klasörü değiştirir.
ftp_mkdir : Klasör yaratır.
ftp_rmdir : Klasör siler.
ftp_nlist : Verilen klasördeki dosyaların listesini döndürür.(listeyi bir diziye atar)
ftp_rawlist : Verilen klasördeki dosyaların detaylı listesini döndürür.
ftp_systype : Bağlanılan FTP serverinin sistem tipini döndürür.
ftp_pasv : Pasif modu açma veya kapama için kullanılır.
ftp_get : Bağlanılan FTP serverindan dosya alır.
ftp_fget : Bağlanılan FTP serverindan dosyayı alır ve açık olan bir dosyaya kaydeder.
ftp_put : Dosyayı FTP serverina upload eder.
ftp_fput : Açık olan bir dosyadan FTP serverina upload yapar.
ftp_size : Girilen dosyanın boyutunu döndürür.
ftp_mdtm : Girilen dosyanın son değiştirilme tarihini döndürür.
ftp_rename : FTP serverindaki bir dosyanın adını değiştirir.
ftp_delete : Girilen dosyayı FTP serveridan siler.
ftp_site : Servera bir site komutu gönderir.
ftp_quit : FTP bağlantısını kapatır.


Örnek ftp uygulaması

ftp_connect : FTP bağlantısı yapar.

Kullanımı :

int ftp_connect(string host,int[port]);
Başarı durumunda ftp bağlantısı döndürür, hata durumunda False döndürür.

ftp_connect() belirtilen hosta FTP bağlantısı yapar.PORT parametresi bağlantı için alternatif bir port sağlar.Yazılmazsa veya 0 değeri verilirse , Default FTP portu olarak 21 kullanılır.


yukarı

ftp_login : Bir FTP bağlantısına login yapar.
Kullanımı :
int ftp_login(int ftp_bağlantısı, string kullanıcıadı, string şifre);
Başarı durumunda True, hata durumunda falase değerini döndürür.
ftp_login() verilen ftp bağlantısına login yapar.

yukarı

ftp_pwd : Serverda içinde bulunulan klasörü döndürür.
-------------

Kullanımı :
int ftp_pwd(int ftp_bağlantısı);
başarı halinde içinde bulunulan klasörü hata halinde False döndürür.

yukarı

ftp_cdup : Serverda bir üst klasöre geçer.
-------------

Kullanımı :
int ftp_cdup(int ftp_bağlantısı);
başarı halinde True, hata halinde False döndürür.

yukarı
ftp_chdir : Serverda belirtilen klasöre geçer.
-------------

Kullanımı :
int ftp_chdir(int ftp_bağlantısı , string gidilecek_klasör);
Başarı halinde True, hata halinde False döndürür.
yukarı

ftp_mkdir : Serverda yeni bir klasör yaratır.
-------------

Kullanımı :
string ftp_mkdir(int ftp_bağlantısı,string klasör_adı);
başarı halinde yeni bir klasör yaratılır,hata halinde False döndürür.

yukarı

ftp_rmdir : Serverda bir klasörü siler.
-------------

Kullanımı :
int ftp_rmdir(int ftp_bağlantısı,string klasör_adı);
Başarı halinde True, hata halinde False döndürür.
yukarı

ftp_nlist : Verilen klasörde bulunan dosyaların listesini döndürür.
-------------

Kullanımı :
int ftp_nlist(int ftp_baglantısı,string klasör_adı);
Başarı halinde elemanları dosyaadları olan bir dizi , hata halinde False döndürür.
yukarı

ftp_rawlist : Verilen klasörde bulunan dosyaların ayrıntılı listesini döndürür.
-------------

Kullanımı :
int ftp_rawlist(int ftp_baglantısı, string klasör_adı);
ftp_rawlist() FTP LIST komutunu icra eder.ve sonuçları bir dizide döndürür.Her dizi elemanı text in bir satırına karşılık gelmektedir.Ayrıca ftp_systype() ile döndürülen sistem tip belirteci sonuçların nasıl yorumlanması gerektigini saptamada kullanılabilir.
yukarı

ftp_systype : Bağlı bulunulan FTP serverinin sistem tip belirtecini döndürür.
-------------

int ftp_systype(int ftp_baglantısı);
Başarı halinde sistem belirtecini, hata halinde False döndürür.
yukarı

ftp_pasv : Pasif modu açar veya kapar.
-------------

Kullanımı :
int ftp_pasv(int ftp_baglantısı,int pasv);
Başarı halinde True,hata halinde False döndürür.
ftp_pasv() pasv parametresi True ise pasif modu açar.pasv parametresi False ise pasif modu kapar.
yukarı

ftp_get : Belirtilen dosyayı FTP serverindan alır.
-------------

Kullanımı :
int ftp_get(int ftp_baglantısı, string local_file, string remote_file, int mode);
Başarı halinde True,hata halinde False döndürür.
ftp-get() komutu remote_file ile belirtilen dosyayı serverdan alır ve bilgisayara local_file
ile belirtilen isim ile kaydeder. mode parametresi FTP_ASCII veya FTP_BINARY olarak belirtilmelidir.

yukarı

ftp_fget : Belirtilen dosyayı FTP serverindan alır ve açık bir dosyaya kaydeder.
-------------

Kullanımı :
int ftp_fget(int ftp_baglantısı, int fp, string remote_file, int mode);
Başarı halinde Trueihata halinde False döndürür.
ftp_fget() komutu remote_file ile belirtilen dosyayı serverdan alır ve fp, dosya belirteci ile verilen dosyaya kaydeder.mode parametresi FTP_ASCII veya FTP_BINARY den birisi olmalıdır.
yukarı

ftp_put : Bilgisayardan belirtilen dosyayı alır ve FTP serverına kaydeder.
-------------

Kullanımı :
int ftp_put(int ftp_baglantısı, string remote_file,string local_file, int mode);
Başarı halinde True,hata halinde False döndürür.
ftp_put() bilgisayardan local_file ile belirtilen dosyayı alıp FTP serverina remote_file adıyla kaydeder.mode parametresi FTP_ASCII veya FTP_BINARY den birisi olmalıdır.
yukarı

ftp_fput : Bilgisayardan acık olan dosyayı alır ve FTP serverina kaydeder.
-------------

Kullanımı :
int ftp_fput(int ftp_baglantısı, string remote_file, int fp, int mode);
Başarı halinde true,hata halinde False döndürür.
ftp_fput() fp ile belirtilen dosya belirteci ile gösterilen dosyadan dosyanın sonuna kadar olan veriyi FTP serverina upload eder. Dosya servera remote_file ile belirtilen ad ile kaydedilir.mode parametresi FTP_ASCII veya FTP_BINARY den birisi olmalıdır.
yukarı

ftp_size : Verilen dosyanın büyüklüğünü döndürür.
-------------

Kullanımı :
int ftp_size(int ftp_baglantısı,string dosya_adı);
Başarı halinde dosyanın büyüklüğünü,hata halinde -1 değerini döndürür.
ftp_size() verilen dosyanın büyüklüğünü döndürür.Eğer bir hata oluşursa,mesela verilen dosya olmayabilir, -1 döndürür.Bütün serverlar bu fonksiyonu desteklememektedir.
yukarı

ftp_mdtm : Belirtilen dosyanın son değiştirilme tarihini döndürür.
-------------

Kullanımı :
int ftp_mdtm(int ftp_baglantısı,string dosya_adı);
Başarı halinde bir UNIX timestamp ı, hata halinde -1 döndürür.
Bu fonksiyonu bütün serverlar desteklememektedir.

yukarı

ftp_rename : FTP serverindaki bir dosyanın adını değiştirir.
-------------

Kullanımı :
int ftp_rename(int ftp_baglantısı,string dosya_adı,string yenidosya_adı);
Başarı halinde True,hata halinde False döndürür.
yukarı

ftp_delete : FTP serverinda belirtilen dosyayı siler.
-------------

Kullanımı :
int ftp_delete(int ftp_baglantısı,string path);
Başarı halinde True,hata halinde False döndürür.
ftp_delete() FTP serverindan path parametresi ile belirtilen dosyayı siler.
yukarı
ftp_site : Servera bir site komutu gönderir.
-------------

Kullanımı :
int ftp_site(int ftp_baglantısı,string cmd);
Başarı halinde True,hata halinde False döndürür.
ftp_site() FTP serverina cmd ile belirtilen komutu gönderir.
yukarı

ftp_quit : FTP baglatısını kapatır.
-------------

Kullanımı :
int ftp_quit(int ftp_baglantısı);

yukarı


ÖRNEK KOD :
PHP:
<?php
dl("php3_ftp.dll"); /*Scripte ?php3_ftp.dll? dinamik kütüphane  dosyasını 
kullanmasını söylüyoruz.*/
$host="ftp.ornek.com";
$user="username";
$pass="password";  
if (!$ftp=ftp_connect($host)) //ftp ye  bağlanıyoruz.
{
echo $host ; 
echo ("Bağlantı yapılamadı.");
exit;  
}
if (!ftp_login($ftp,$user,$pass)) //  username ve password giriyoruz.
{
echo ("Login  yapılamadı.");
exit;
}
$local="main.htm";
$remote="index.htm";
ftp_get($ftp,$local,$remote,FTP_ASCII);  
/* ftp_get kullanarak FTP serverindaki  index.htm dosyasını bilgisayarımıza main.htm olarak alıyoruz. ASCII modunda.*/  

$local=?deneme.htm?;
$remote=?ana.htm?;
ftp_put($ftp,$remote,$local,FTP_ASCII);
/*ftp_put kullanarak bilgisayarımızdaki deneme.htm dosyasını FTP  serverina ana.htm adıyla upload ettik. ASCII  modunda*/


$files=ftp_nlist($ftp,deneme);
$a=sizeof($files);
echo  ("Deneme Klasöründeki Dosyaların  Listesi");
echo"<br>";
for($i=0;$i<$a;$i++){
echo  $files[$i];
echo"<br>";
}
/*ftp_nlist komutu ile FTP serverindaki deneme klasöründeki bütün  dosyaları bir dizi halinde $files dizisine atadık.Daha sonra sizeof()  fonksiyonuyla $files dizisindeki eleman sayısını öğreniyoruz yani kaç dosyamız  olduğunu.Daha sonra for döngüsüyle bu dosyaların adlarını ekrana  basıyoruz.*/

$dizin=ftp_pwd($ftp);
echo $dizin; 
/*ftp_pwd komutu ile o anda içinde olduğumuz dizini öğrenip  ekrana basıyoruz.*/

ftp_chdir($ftp,altklasör);
/*ftp_chdir() komutu ile FTP serverinda dizin değiştirip  altklasör adlı dizine geçiyoruz*/
ftp_rename($ftp,index.htm,main.php3);
/*ftp_rename() komutu ile serverdaki index.htm dosyasının adını  main.php3 olarak değiştirdik.*/

$sys=ftp_systype($ftp);
echo ("System type : ");
echo  $sys;
echo "<br>";

/*ftp_systype() komutu ile FTP serverinin sistem tipini  öğrendik.Burada eğer FTP serverimiz Unix sistem üzerindeyse ekrana UNIX  yazacaktır.*/
ftp_quit($ftp); //ftp  bağlantımızı kapattık.
?>
 
Back
Yukarı