Vendosja e Menjëhershme e Cookies në PHP
Për të bërë që një cookie e vendosur të shfaqet menjëherë
në vargun $_COOKIE, mund të përdorni
një teknikë të zgjuar.
Thelbi i teknikës është ky: së pari vendosim
cookie-n duke përdorur setcookie, dhe pastaj
manualisht e shkruajmë atë në vargun $_COOKIE:
<?php
setcookie('str', 'eee');
$_COOKIE['str'] = 'eee';
var_dump($_COOKIE['str']); // menjëherë do të nxjerrë 'eee'
?>
Që cookie të mos dërgohet çdo herë në shfletues, mund ta bëjmë shkrimin e cookie brenda një kushti. Nëse një cookie e tillë nuk ekziston, atëherë e shkruajmë atë:
<?php
if (!isset($_COOKIE['str'])) { // nëse cookie nuk ekziston
setcookie('str', 'eee');
$_COOKIE['str'] = 'eee';
}
echo $_COOKIE['str']; // do të nxjerrë 'eee'
?>
Le të diskutojmë se si funksionon kjo. Në hyrjen e parë
në faqe, do të futemi në if,
do të vendosim cookie-n në shfletues dhe menjëherë do ta shkruajmë
në $_COOKIE. Pastaj përmes echo
do të nxjerrë vlerën që kemi shkruar manualisht.
Në hyrjet pasuese në faqe, nuk do të futemi
në if, por në $_COOKIE do të përmbajë
cookie-n tonë, e cila tashmë ka ardhur nga shfletuesi.
Kështu, si në hyrjen e parë, ashtu edhe në
atot pasuese, në $_COOKIE do të gjendet
cookie-ja jonë.
Provoni teknikën e përshkruar.