PHP'de Çerezleri Anında Ayarlama
Yeni ayarlanmış bir çerezin hemen
$_COOKIE dizisinde görünmesi için
kullanışlı bir yöntem kullanabilirsiniz.
Yöntemin özü şu şekildedir: önce
setcookie ile çerezi ayarlayın,
ardından manuel olarak $_COOKIE
dizisine yazın:
<?php
setcookie('str', 'eee');
$_COOKIE['str'] = 'eee';
var_dump($_COOKIE['str']); // hemen 'eee' yazdıracak
?>
Çerezin her seferinde tarayıcıya gönderilmemesi için, çerezi yazma işlemini bir koşulun içine alabilirsiniz. Eğer böyle bir çerez yoksa, onu ayarlayalım:
<?php
if (!isset($_COOKIE['str'])) { // eğer çerez yoksa
setcookie('str', 'eee');
$_COOKIE['str'] = 'eee';
}
echo $_COOKIE['str']; // 'eee' yazdıracak
?>
Bunun nasıl çalıştığını tartışalım. Sayfaya ilk
girişte if koşulunun içine gireceğiz,
çerezi tarayıcıya ayarlayacağız ve hemen
$_COOKIE dizisine yazacağız. Ardından
echo ile manuel olarak yazdığımız değer
görüntülenecek.
Sonraki sayfa ziyaretlerinde if koşulunun
içine girmeyeceğiz, ancak $_COOKIE dizisinde
tarayıcıdan gelen çerezimiz zaten bulunacak.
Böylece, hem ilk ziyarette hem de sonrakilerde
$_COOKIE dizisinde çerezimiz bulunacak.
Açıklanan yöntemi deneyin.