Проблема установки кук в PHP
При записи и чтении куки на одной странице
нас будет поджидать некоторый подвох.
Дело в том, что куки, установленные через
setcookie, становятся доступными
в массиве $_COOKIE только
после перезагрузки страницы.
Давайте проверим это. Запишем через
setcookie какую-то куку и сразу выведем
ее на экран. В этом случае при первом заходе
в $_COOKIE для нашей куки будет null,
а при уже обновлении страницы - значение куки:
<?php
setcookie('str', 'eee');
var_dump($_COOKIE['str']); // сначала null, а потом 'eee'
?>
Проверьте описанное поведение кук.