Fonksiyon Kütüphanesi – Cookie , Setcookie

Cookie'nin ingilizceden türkçeye çevrilmiş anlamı olarak çerez kullanılır ve internet sitelerinde kullanıcının bir sürelik bilgilerini veya isteğimize göre bazı kullanıcıya ait detayları tutmamıza yarayan bir fonksiyondur.

Cookie oluşturma , silme işlemi :

PHP:
  1. # Cookie Oluşturuyoruz
  2. $cookie_degeri = 1;
  3. setcookie("Cookie_adi", $cookie_degeri, time()+3600)/* 1 saatliğine geçerli */
  4. echo $_COOKIE['Cookie_adi'];
  5. // Ekran Çıktısı : 1 olur .
  6. // Başka bir şekilde ekrana basmak istersek
  7. echo $HTTP_COOKIE_VARS["Cookie_adi"];
  8. # Veya sadece o browser penceresi için geçerli cookie oluşturma
  9. setcookie("Cookie_adi", $cookie_degeri);

Bu önceki oluşturduğumuz cookieyi silmek istersek :

PHP:
  1. # Cookie siliyoruz
  2. setcookie("Cookie_adi", "" , time()-3600)/* 1 saatliğine oluşturduğumuz için tekrar 1 saat çıkarıyoruz ( 3600 saniye ) */
  3. # Veya
  4. setcookie("Cookie_adi", "" , time()-99999999999999); /* Süre belirtmeden cookieleri kaldırabiliriz .  */
  5. # Yada süresiz o browser penceresi için oluşturduğumuz cookileri silme 
  6. setcookie("Cookie_adi", "" );

Ve gelelim en büyük sorunlardan birisine bu sorun ise subdomain ( Alt alan adı ) kullanılan sitelerde cookieleri gösterme sorunu . Bu sorunu halledebilmemiz için çok önemli ve tekbir olay var oda setcookie fonksiyonumuzdan sonra kullanacağımız kısa bir domain adı belirtmemiz .

Şu şekilde :

PHP:
  1. $cookie_degeri = 1;
  2. setcookie ("Cookie_adi", "$cookie_degeri", time()+3600, ".byumut.com");
  3. # Şeklinde oluşturduğumuz cookieler byumut.com domaini altındaki tüm subdomainlerde çalışacaktır .

Peki ya sadece http protokolü altında cookilerimizi çalıştırmak istersek yapmamız gereken ne olabilirdi ?

Oda şu şekilde :

PHP:
  1. $cookie_degeri = 1;
  2. setcookie ("Cookie_adi", "$cookie_degeri", time()+3600, ".byumut.com" , 1 );
  3.  
  4. # En son kısıma koyduğumuz 1 rakamı bizim cookiemizi sadece http protokolü altında çalışmasına izin verir .

Peki sitemiz üzerinde oluşturduğumuz tüm cookileri nasıl görebiliriz ?

PHP:
  1. echo '<pre>';
  2. print_r($_COOKIE);
  3. echo '</pre>';

Cookie ve setcookie hakkında daha detaylı bilgiyi almak isterseniz php.net adresine başvurabilirsiniz .

32 views

Leave a Reply

*
To prove you're a person (not a spam script), type the security word shown in the picture. Click on the picture to hear an audio file of the word.
Click to hear an audio file of the anti-spam word