Küpsiste kiire seadistamine PHP-s
Selleks, et seatud küpsist kohe
ilmuks massiivis $_COOKIE, saab
kasutada nutikat võtet.
Võtte olemus on järgmine: kõigepealt seame
küpsise kasutades setcookie, seejärel
kirjutame selle käsitsi massiivi $_COOKIE:
<?php
setcookie('str', 'eee');
$_COOKIE['str'] = 'eee';
var_dump($_COOKIE['str']); // väljastab kohe 'eee'
?>
Et küpsist ei saadetaks iga kord brauserisse, võib küpsise kirjutamise panna tingimuse sisse. Kui sellist küpsist pole, siis kirjutame selle:
<?php
if (!isset($_COOKIE['str'])) { // kui küpsist pole
setcookie('str', 'eee');
$_COOKIE['str'] = 'eee';
}
echo $_COOKIE['str']; // väljastab 'eee'
?>
Arutleme, kuidas see töötab. Esimesel
lehele sisenemisel satume if-i,
seame küpsise brauserisse ja kirjutame kohe
$_COOKIE-sse. Seejärel väljastatakse
meie poolt käsitsi kirjutatud väärtus läbi echo.
Järgnevatel lehele sisenemistel me ei satu
if-i, kuid $_COOKIE-s sisaldub
meie küpsist, mis on juba brauserist tulnud.
Seega nii esimesel kui ka järgnevatel
sisenemistel on $_COOKIE-s meie küpsist.
Proovige kirjeldatud võtet.