Ana sayfa » Eğitim ve Örnekler, Featured

PHP – curl de login işlemleri

14 Nisan 2011 Yorum yapılmamış

 

Bilindiği üzere curl linux üstünde gelen bir internet gezgini, gittikçe gelişen curl uygulamasının nimetlerinden yararlanmak için php ye entegre edilen bu uygulama, php nin varsayılmazı haline geldi.

Curl ile bir web sitesinde kullanıcı girişleri, sepete ürün ekleme, içerik çekme, form yollama işlemleri ve tarayıcınızda, ftp istemcinizde, mail istemcini ve daha birçok istemcinin yapabileceği işi cuurl tek başına yapar yapabileceğiniz herşeyi yapabilirsiniz, json işlemleri

bot yapımında da bir numaralı yardımcımızdır curl.

Curl’ ün desteklediği tüm protokoller:

HTTP, HTTPS, FTP, FTPS, SCP, SFTP, TFTP, LDAP, LDAPS, DICT, TELNET, FILE · IMAP, POP3, SMTP ve RTSP

 

Şimdi curl’ de giriş işlemlerine başlayalım, bu konuda ssl’ siz curl login işlemi anlatıylacaktır.

<?php
$kulad = "kullanıcı adı";
$sifre = "şifre";
$postfields = "kullanici=$kulad&sifre=$sifre&submit=giriş";
Not: değerler arasında & kullanıldığına dikkat ediniz.
  1. $ch = curl_init();
  2. curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);
  3. curl_setopt($ch, CURLOPT_COOKIEJAR, "cerez.txt");
  4. curl_setopt($ch, CURLOPT_URL, "http://www.baglanilacaksite.com/index.php?islem=giris");
  5. curl_setopt($ch, CURLOPT_POST, 1);
  6. curl_setopt($ch, CURLOPT_POSTFIELDS, "$postfields");
  7. curl_exec($ch);
  8. curl_close($ch);
?>
1 – curl_init ile php’ye curl’ü çalıştır komutu gönderiliyor.
2 – CURLOPT_FOLLOWLOCATION ile yönlendirme varsa o sayfaya yönlenmesi gerektiğini curl e iletir. Not: curl de varsayılan olarak yönlendirme devre dışıdır, bu komut bazı hostinglerde çalışmamaktadır güncellemelerle bu sorun aşılabilmektedir, bu sorunların çözülmesi sadece hostingcinizin deneyimi ve bilgisiyle çözülebilir. Örnek hata mesajı:
PHP Warning: curl_setopt() [<a href=’function.curl-setopt’>function.curl-setopt</a>] : CURLOPT_FOLLOWLOCATION cannot be activated when in safe_mode or an open_basedir is set in
3-  Curl’ e cookie(çerez)’lerin kaydedilceği dosyayı belirtir. Uyarı:
cerez.txt yada cookie lerin kaydedileceği dosyanın yazılabilir(777) olduğuna emin olunuz. Aksi bir durumda veri kaydı olmayacak ve giriş işlemi olmayacaktır.
4- Bağlanılacak adres(url) belirlenir.
5- Curl’e bir form yada bilgi gönderip alma işlemlerinden olan POST ile bilgi gönderileceği bildiriliyor.
6- CURLOPT_POSTFIELDS ile POST edilecek veriler seçiliyor.
7- Curl’e bu parametrelerle çalış komutu veriliyor. curl_exec bir değişene eşitlenerek çalıştırılan sayfadaki verinin içeriği bu değişkene aktarılır. Örnek:
$veriler=curl_exec($ch);
echo $veriler; yazdığınızda dönen verinin ekrana basıldığını göreceksiniz. Giriş yapılıp yapılamadığını bu şekilde takip edebilirsiniz.
8- Curl’ün bitirilmesi komutu veriliyor
Not: kullanıcı girişi yapılmışken sayfaları gezmek gerekliyse curl en sona yazılır aksi durumda bilgiler ortak kullanılamayacaktır. Devamlı cookie çağırıp durmak mantıklı olmayacaktır.
Bir sonraki curl eğitiminde ssl li kullanıcı girişi anlatılacaktır.

Sizin fikirleriniz...

Yorumlarınızı buradan ekleyebilir, kaynak göstererek yazılarımızı yayınlayabilirsiniz. Dilerseniz bu konuya ait yorumları RSS olarak takip edebilirsiniz.

İzin verilen taglar:
<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>