cookie (çerez) kullanımı

uygulamalarımda session ( oturum ) kullanan biri olarak bugüne kadar cookie ye hiç ihtiyaç duymadım. belki ilk olarak session kullanmayı öğrenip cookie kullanmayı tembellik edip öğrenmediğimden belki de cookie de yapılabilecek hataların büyük riskler oluşturacağını duyduğumdan.cookie kullanma vaktidir artık. ufak araştırmalar sonucu öğrendiklerimi paylaşmak istedim.cookiede sessionda olduğu gibi oturum server tarafında değil client tarafında açılıyor ve clientte bir oturum dosyası tutuluyor. bu dosya oturumun ilk başlatıldığı an oluşuyor ve oturuma biçilen süre boyunca verilen değerleri tutuyor.

cookie

Şekil 1 de olduğu gibi oturum ilk başlatıldığında Server tarafından Cliente bilgiler gönderilir. Daha sonra kontrol sırasında clientten bilgiler server a gönderiliyor. Mantığı anlatmak hep zor gelmiştir bana hadi pratiğe geçelim.

bir değişken tanımlayıp, değer atayalım ve ona ömür biçelim.

PHP:
  1. setcookie("degisken_ismi","atanan_deger",time()+60*60);

degisken_ismi, adından da anlaşılabileceği gibi değişkenin ismi; atanan_deger, değişkene atanan değer oluyor burada. değişkene atanan değeri daha sonra kullanabilmek için $_COOKIE['degisken_ismi'] şeklinde çağırıyoruz. yukarıda değişkenin ömrünü belirlerken time()+verilen süre şeklinde tanımlıyoruz. verilen süre saniye şeklinde tanımlanıyor. be tanımlarken 60*60 şeklinde tanımladım bu da bir saate denk geliyor. istersek bunu 3600 şeklinde de yapabilirdik.

tanımlanan değeri yok etmek için

PHP:
  1. setcookie("degisken_ismi","",time()-60*60);

değişkene boş değer atadım ve süreyi - olarak verdim. böylelikle değer silinmiş oldu.

aşağıda verdiğim örnek incelenirse saten anlaşılabilir bu durum açıkca.

PHP:
  1. if(isset($_COOKIE['deger']) && empty($_REQUEST['do'])){
  2.  
  3. //oturum daha önce açılmış. bilgileri gösterelim.
  4. echo 'Oturum açılmış. Tutulan değer : '.$_COOKIE['deger'].'. <a href="http://cicekmedya.com/wp/wp-admin/cookie.php?do=oturumkapa">Çıkış</a> yapın';
  5.  
  6. }elseif($_REQUEST['do'] == "oturumac" &amp;&amp; !isset($_COOKIE['deger'])){
  7.  
  8. // tanımlama yaparken; ilk olarak değişkenin ismi, değişkene atanacak değer, değerin tutulacağı süre saniye cinsinden.
  9. setcookie("deger", "enver", time()+60*60);
  10. // bir saat için değer tutulacak.
  11. echo 'Oturum açıldı. Geldiğim yere geri <a href="http://cicekmedya.com/wp/wp-admin/cookie.php">dön</a>';
  12.  
  13. }elseif($_REQUEST['do'] == "oturumkapa" &amp;&amp; isset($_COOKIE['deger'])){
  14.  
  15. // oturumu kapamak için boş değer vermek ve ya değerin tutulacağı süreyi - vermek yeterli oluyor. ben ikisini birden yaptım.
  16. setcookie("deger", "", time()-60*60);
  17. echo 'Oturum kapatıldı. Geldiğim yere geri <a href="http://cicekmedya.com/wp/wp-admin/cookie.php">dön</a>';
  18.  
  19. }else{
  20.  
  21. // değer boş geldi. oturumun açık olmadığını söyleyelim.
  22. echo 'Açık oturum bulunamadı. Oturum açmak için <a href="http://cicekmedya.com/wp/wp-admin/cookie.php?do=oturumac">tıklayınız.</a>';
  23.  
  24. }
  25.  
  26. ?&gt;;

Yorum Yazın