PHP: Funkce setcookie() při volání přes AJAX nevytvoří požadovanou cookie

by Zdeněk Večeřa 0 Comments

Pokud přes AJAX voláte PHP skript, kde pomocí funkce setcookie() chcete vytvořit/nastavit cookie, ale cookie se nevytvoří, zkontrolujte čtvrtý parametr – path:

setcookie('nazev_cookie', $json, time()+28800, '/');

Při volání skriptu přes AJAX se bez zadání čtvrtého parametru cookie vytvoří v adresáři volaného skriptu (ten, který voláte AJAXem), tedy třeba v adresáři /ajax/ajax.php. Když ale ostatní části webu fungují na rootu domény /, cookie nebude dostupná. Jako čtvrtý parametr funkce setcookie() zadejte lomítko, kterým řeknete, že chcete mít cookie dostupnou pro celou doménu.



Leave a reply

Your email address will not be published.

You may use these HTML tags and attributes:

<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>