Takojšnja nastavitev piškotkov v PHP
Za takojšnji nastanek piškotka v tabeli $_COOKIE
lahko uporabimo zvito tehniko.
Bistvo tehnike je naslednje: najprej nastavimo
piškotek s pomočjo setcookie, nato pa
ga ročno zapišemo v tabelo $_COOKIE:
<?php
setcookie('str', 'eee');
$_COOKIE['str'] = 'eee';
var_dump($_COOKIE['str']); // takoj izpiše 'eee'
?>
Da se piškotek ne bi pošiljal vsakič v brskalnik, lahko pisanje piškotka postavimo znotraj pogoja. Če takega piškotka ni, ga zapišemo:
<?php
if (!isset($_COOKIE['str'])) { // če piškotka ni
setcookie('str', 'eee');
$_COOKIE['str'] = 'eee';
}
echo $_COOKIE['str']; // izpiše 'eee'
?>
Razložimo, kako to deluje. Ob prvem
dostopu do strani bomo prišli v if,
nastavili piškotek v brskalnik in ga takoj zapisali
v $_COOKIE. Nato se bo preko echo
izpisala naša ročno vpisana vrednost.
Ob naslednjih obiskih strani ne bomo prišli
v if, vendar bo v $_COOKIE vsebovan
naš piškotek, ki je že prišel iz brskalnika.
Tako bo takoj ob prvem obisku kot tudi
ob naslednjih v $_COOKIE naš piškotek.
Preizkusite opisano tehniko.