Я пытаюсь предоставить пользователю возможность отслеживать свои сеансы и аннулировать их в любое время, когда он пожелает, сохраняя запись их session_id в базе данных. Я имею в виду, что в базе данных я поддерживаю таблицу user_sessions, которая связывает user_id с их session_id (полученным с помощью Session::getId()).
Итак, чтобы сделать сеанс недействительным, я попробовал следующий код:
Код: Выделить всё
$sessionId = Session::getId();
Session::setId($sessionId);
Session::invalidate();
Для случая, когда пользователь использует функцию «Запомнить меня», этот приведенный выше код не работает. Поэтому я дополнительно попробовал установить для поля Remember_token значение null, как указано здесь, в этом ответе, но при этом все сеансы пользователь будет уничтожен, включая текущего.
Подробнее здесь: https://stackoverflow.com/questions/501 ... ber-me-fea
Мобильная версия