у меня есть таблица user_logins
для ведения нескольких регистрационных данных о пользователе
структура таблицы для user_logins
:
'session_id',
'user_id',
'ip_address',
'user_agent',
'browser_name',
'location',
'login_at',
'is_active'
у меня есть UserEventSubscriber слушатель с 2функции как ниже:
public function handleUserLogin($event) {
UserLogin::create([
'session_id'=>Session::getId(),
...
]);
}
я получаю Session::getId() = mpT6RDsl54JExkejrqf3fnYiFLzbR2pTb2qfNHBe
в handleUserLogin
функция
теперь, когда пользователь выходит из системы, я хочу обновить / удалить запись таблицы из таблицы user_logins, где session_id = Session:: getId ()
public function handleUserLogout($event) {
dd(Session::getId());
//UserLogin::where('session_id',Session::getId())->delete();
}
для функции handleUserLogout я получаю другой идентификатор сеанса
Session::getId() qLYngAx1Vs8VBhxm0oCKZO3fDwun02UEXRyDm0Hi
, поэтому я не могу обновить / удалить запись в user_logins
таблице
я видел sessions
таблица имеет идентификатор qLYngAx1Vs8VBhxm0oCKZO3fDwun02UEXRyDm0Hi
, который совпадает с идентификатором, который я получаю при выходе из системы.
, поэтому мой вопрос, почему я получаю другой идентификатор сеанса для функции входа пользователя?и что я должен сделать, чтобы получить тот же идентификатор сеанса, используя Session::getId()
в handleUserLogin и handleUserLogout функции.