У меня проблема с обработкой сессии в PHP (версия 5.2.10).Я использую следующие функции для входа в систему, выхода из системы и проверки сеансов.
login()
{
session_set_cookie_params(0);
session_start();
session_regenerate_id(true);
$_SESSION['user_id']
}
validate_session()
{
session_set_cookie_params(0);
session_start();
if (isset($_SESSION['user_id']) === FALSE) {
session_destroy();
logout();
header("Location: login_page");
}
}
logout()
{
session_set_cookie_params(0);
session_start();
$_SESSION = array();
setcookie(session_name(), '', time() - 3600, '/');
session_destroy();
}
Каждая страница сначала вызывает функцию validate_session ().Если сеанс недействителен, он перенаправляет на страницу входа.Функция login () используется для создания сеанса для пользователя.Когда пользователь нажимает кнопку выхода из системы, вызывается функция logout () для уничтожения сеанса.
Проблема заключается в следующем: случайным образом функция logout () выдает предупреждение:
Предупреждение: session_destroy (): SessionОшибка уничтожения объекта
Я получаю это предупреждение очень редко.Как из 20-30 звонков, чтобы выйти, я получаю это один раз.Есть мысли?
Я занимаюсь разработкой на компьютере с Windows XP.
Обновление: сеансы хранятся в файловой системе.
Путь: C: \ WINDOWS \ Temp