У меня есть сайт PHP, который я поддерживаю, и я подтвердил, что это сработало в один момент.
У нас есть веб-сайт, использующий систему входа в систему, в которой информация о зарегистрированном пользователе хранится в переменной $_SESSION['user']
. Сайт использовался для выхода из системы пользователя при нажатии / logout.php , который по существу удалял эту часть сеанса, а затем header()
перенаправлялся на домашнюю страницу.
В последнее время файл / logout.php с session_start()
вверху почему-то не видит информацию о сеансе, когда print_r()
используется для вывода ее в целях отладки.
Если я перехожу на другую страницу, я прекрасно вижу информацию о сеансе, но не на странице выхода из системы ... именно поэтому я не могу удалить информацию о сеансе, потому что она недоступна.
Я думал, что $_SESSION
был глобальным на сайте, пока браузер не был закрыт. У меня никогда не было такого, и я знаю, что экземпляр сеанса был запущен на этой странице, поэтому странно, что он не показывает мне данные сеанса.
Есть идеи? Я в полном замешательстве!
код: /logout.php
<?
#session_start() is inside this file
require_once($_SERVER['DOCUMENT_ROOT'].'/includes/config.php');
unset($_SESSION['user']);
header("location: /");
exit();
?>
Проверка $_SESSION['user']
выполняется по всему сайту, и я призываю к различным пунктам ниже, когда это необходимо для разных вещей. Кто-то еще создал этот сайт, и я пытаюсь отладить, почему он не работает для них внезапно.