Задать вопрос
chelovekmuravei
@chelovekmuravei
\(-_-)/ раз два три четыре

Как проверять существует ли сессия?

Не могу понять механизм работы. Код работает таким образом, я проверяю на isset PHPSESSID, далее я должен убедиться что файл sess_PHPSESSID действительно существует. Но как? Способа я не нашел, мысль только одна, проверять файлы по названию. Но должен же быть способ проще. И если писать session_start(); создастся сессия, проверять пустая ли она на любое первое значение, она будет пустой хоть как и удалять. Но это похоже на бред, создавать и удалять. =\

История о том как: искал то не зная что шел туда не зная куда
  • Вопрос задан
  • 13988 просмотров
Подписаться 1 Оценить 2 комментария
Решения вопроса 3
chelovekmuravei
@chelovekmuravei Автор вопроса
\(-_-)/ раз два три четыре
Ответ такой
session_start();
if(isset($_SESSION['ххх'])) { 
echo "Сессия существует"; 
}
else { 
session_destroy();
echo "Такой сессии не существует";
}
Ответ написан
Stalker_RED
@Stalker_RED
Да, всё правильно.
Проверить существует ли кука. Если да, то session_start() и проверить - не пустая ли.

она будет пустой хоть как и удалять
- смысл этой фразы не понял.

function is_session_exists() {
    $sessionName = session_name();
    if (isset($_COOKIE[$sessionName]) || isset($_REQUEST[$sessionName])) {
        session_start();
        return !empty($_SESSION);
    }
    return false;
}
Ответ написан
@Anar4you
if(isset($_SESSION['blablabla'])) { // Если есть данные в 'blablabla', то...
echo "sessiya est'"; // Выполняем что-либо
}
else { // Если данных в сессии нет, то...
echo "sessiyi netu kek((";
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы