cakePHP Сессия входа в систему - PullRequest
0 голосов
/ 03 июня 2011

Я просто хочу попросить помощи по моей проблеме. У меня вот такая ситуация:

Person1 входит в свою учетную запись с именем пользователя и паролем (например, username = "myUsername" и password = "myPassword") и Person1Успешно входит в систему, и информация Person1 сохраняется в сеансе ..

Теперь после входа Person1, Person2 также входит в систему с той же учетной записью (username = "myUsername" и password = "myPassword") ..

Что я хочу, так это когда Person2 входит в систему, Person1 будет выходить из системы ... как я могу это сделать?

Любая помощь будет принята с благодарностью.Спасибо

: D

1 Ответ

2 голосов
/ 03 июня 2011

при входе Person1 вам необходимо сохранить session_id (в БД) с идентификатором подключенного пользователя. Давайте назовем эту таблицу «ConnectedUsers». Если Person1 выходит из системы, удалите строку из ConnectedUsers

Теперь, если Person2 войдет в систему, вам нужно заглянуть в таблицу ConnectedUsers, чтобы увидеть, подключен ли уже пользователь. Если есть один, то уничтожьте его сеанс и создайте строку для Person2

Проблема: вы не сможете удалить строку из ConnectedUsers, если пользователь выйдет из системы из-за истечения сеанса или если он закроет браузер. Вам может потребоваться сохранить время последнего подключения или IP-адрес, чтобы проверить, подключен ли другой пользователь

Удачи!

...