Как проверить залогин ли пользователь?

Общие вопросы по использованию второй версии фреймворка. Если не знаете как что-то сделать и это про Yii 2, вам сюда.
Ответить
myks1992@mail.ru
Сообщения: 147
Зарегистрирован: 2017.11.15, 23:54

Как проверить залогин ли пользователь?

Сообщение myks1992@mail.ru »

Всем привет. Необходимо сделать историю посещений: вход/ выход. Зашёл во столько, вышел во столько. Однако на сайте используется вход на основе кук и сессий. Если логику посещений сделать явно контроллере, то работать будет только при явном входе и выходе. Это не совсем подходит. Так как впемяжизни кук может быть 30 дней. Ещё нашел событие beforeLogin.

Как я понял оно работает всегда при логине через куки и сесии. Возможно навесить на него свой код. Но как быть с логаут? Он разлогиниться только через 30 дней. Вижу единственный вариант при каждом запросе записывать активность в базу при обращении к страницам.

Как лучше сделать Учет рабочего времени?
yiiliveext
Сообщения: 910
Зарегистрирован: 2019.08.13, 01:49

Re: Как проверить залогин ли пользователь?

Сообщение yiiliveext »

Еще есть событие явного логаута EVENT_AFTER_LOGOUT. Для остального используете таймаут активности. В EVENT_BEFORE_LOGIN обновляете последню активность, если был неактивен, скажем, в течение часа, то при записываете время выхода как время активности плюс один час.
Ответить