Странный вопрос.
Это index.php:
session_start();
print_r($_COOKIE);
print_r($_SESSION);
Это logout.php:
session_destroy();
$_COOKIE['key'] = "";
$_COOKIE['usr_email'] = "";
setcookie("key", "", time() - 3600);
setcookie("usr_email", "", time() - 3600);
header("Location: http://www.site.net/index.php");
Когда я загружаю logout.php, после перенаправления на index.php я получаю:
Array
(
[fc] => fcVal=6927578914025605120
[PHPSESSID] => na015ipu3s69hhj00sgd0h1es6
)
Array
(
[key] => cc2bffe0c1e36bc5790f5b78b11e5f50
[usr_email] => myemail@gmail.com
)
Сессии в порядке, так как я генерирую их при загрузке index.php, но как все еще присутствует cookie?
Примечание
У меня есть еще один код в index.php, который определяет, была ли заполнена форма входа в систему и начинает ли аутентифицировать пользователя. Если пользователь / пароль верны, он устанавливает два сеанса и два файла cookie (usr_email и ключ).
В данный момент я нахожусь после формы входа в систему, поэтому у меня есть и файлы cookie, и сеансовые переменные, и поскольку файлы cookie не удалялись, я отключил любой другой код PHP, который был на странице индекса, так как я подумал, что, возможно, что-то автоматически регистрирует меня. Итак, в настоящее время я прошел аутентификацию, а затем закомментировал остальное со страницы индекса, что не соответствует упомянутому выше.
Также актуально
Вот как я устанавливаю куки при аутентификации пользователя:
setcookie("key", $cookie['key'], time() + 36000);
setcookie("usr_email", $cookie['usr_email'], time() + 36000);
Версия PHP: PHP 5.3.6-13
Последнее редактирование
Как писал Джош в комментариях, я путал отпечаток печенья с сеансом, я не смог удалить переменные сеанса, а не переменные печенья.