CURL(Client URL Library Functions) Nedir? CURL ile kullanıcı kontrolü nasıl yapılır?

Daniel Stenberg tarafından yazılan bu PHP kütüphanesi, birçok farklı tipteki sunucunun, birçok farklı tipte protokol kullanarak birbirleriyle baÄŸlantı ve iletiÅŸim kurabilmesini saÄŸlamaktadır. Desteklenen protokoller ise http, https, ftp, gopher, telnet, dict, file, ve ldap protokolleridir.PHP 4.0.2. versiyonundan sonra PHP’ye eklenmiÅŸtir. Basit bir örnek vermek gerekirse cURL ile bir sitenin ana sayfasını HTML dosyası olarak sunucunuza kaydedebilirsiniz. Bununla beraber bu web sitesindeki ilgili sayfaya birden çok deÄŸiÅŸkeni POST metodu ile gönderebilirsiniz.

CURL’un kullanımına basit bir örnek verelim;
Sitemizin dışındaki farklı bir sunucuda bulunduğu iddia edilen bir kullanıcının varlığının doğrulanmasının gerektiğini varsayalım. Kullanıcıdan üye olduğunu iddia ettği sistemin kullanıcı adı ve şifresini aldıktan sonra aşağıdaki fonksiyon ile bunu kontrol edebilirsiniz;

  1. function kullaniciyiKontrolEt($kul_adi,$sifre) {
  2.  
  3.         $site = “http://hedef_url.php”;
  4.         $ch = curl_init();
  5.         curl_setopt($ch, CURLOPT_URL,$site);
  6.         curl_setopt($ch,CURLOPT_REFERER,$site);
  7.         curl_setopt($ch, CURLOPT_POSTFIELDS,“Kul_adi=$kul_adi&Sifre=$sifre”);
  8.         curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  9.         $ha=curl_exec($ch);
  10.         $pos = strpos($ha, “Gecersiz Tekrar Deneyin”);
  11.         curl_close($ch);
  12.         return $pos;
  13. }

Burada, karşı sistemin kullanıcı adı ve ÅŸifreyi kontrol ettiÄŸini bildiÄŸimiz URL, $site deÄŸiÅŸkeninde tanımlanmaktadır. curl_init() fonksiyonu ile yeni bir oturum baÅŸlatılıyor ve curl_setopt() fonksiyonunda kullanılmak üzere bir tanıtıcı deÄŸer (handle) döndürülüyor. Daha sonra CURL aktarım iÅŸlemlerinde kullanılacak Öntanımlı Sabitler curl_setopt() fonksiyonu ile tek tek tanımlanıyor ve curl_exec() fonksiyonu ile CURL oturumunda tanımlanan Öntanımlı Sabitlere göre iÅŸlem gerçekleÅŸtiriliyor. Bu iÅŸlem sonucunda hedef URL’den bir HTML dosyası dönüyor. Burada fonksiyon geri dönen dosya içerisinde “Geçersiz Tekrar Deneyin” gibi kullanıcının varolmadığı durumlarda karşılaşılabilecek bir ifadeyi strpos() fonksiyonu ile arıyor. Bu arama iÅŸlemi sonucunda $pos deÄŸiÅŸkenine true yada false deÄŸeri atanıyor ve en son adımda fonsiyondan geri döndürülüyor. Elbette burada tanımlanan POST edilecek deÄŸiÅŸken adeti ve ve adları karşı sisteme göre deÄŸiÅŸiklik gösterecektir.

  1. $site = “http://hedef_url.php”;
  2. curl_setopt($ch, CURLOPT_POSTFIELDS,“Kul_adi=$kul_adi&Sifre=$sifre”);
  3. $pos = strpos($ha, “Gecersiz Tekrar Deneyin”);

satırlarındaki değerleri kendinize göre düzenleyerek sizde farklı bir sistemdeki kullanıcının var olup olmadığını doğrulayabilirsiniz.

4 Responses to CURL(Client URL Library Functions) Nedir? CURL ile kullanıcı kontrolü nasıl yapılır? »»


Comments

  1. Yorum by Atay Cem ALGEÇ | 2006/09/24 at 03:49:51

    teşekkürler :)

  2. Yorum by Taner | 2009/03/16 at 13:43:51

    Merhaba url kontrolü bende kendi sitemde denedim ama beceremedim.Sitem hatta doktora üzerine bunu kütüphane sitesinden yapıp deniyecektim beceremedim.

    iyi çalışmalar

  3. Yorum by UÄŸur YILDIZ | 2009/03/16 at 14:30:45

    Merhaba
    Tam olarak ne yapmaya çalıştınız?
    Örnek Scripti yollayabilir misiniz?

  4. Yorum by serkan | 2009/05/25 at 13:11:05

    teşekkürler


Leave a Reply »»