CodeIgniter + QuickAuth + один пользователь, только один сеанс - PullRequest
1 голос
/ 21 ноября 2010

это может быть простой вопрос, но мне действительно нужен свет, чтобы продолжить.

У меня есть эта огромная система PHP в codeigniter, и я использую библиотеку Quick Auth, и мне нужно позволить пользователям входить в систему только на одном компьютере / браузере в данный момент времени. Поэтому, если Джейк входит в систему на ПК1, Джейкс пытается войти на ПК2, сессия ПК1 становится недействительной и закрывается.

Я пытался вручную выполнить поиск в таблице базы данных ci_sessions, чтобы попытаться исключить другой сеанс пользователя, но это кажется слишком болезненным. Я хочу знать, есть ли одно простое решение, у меня нет проблем с продлением сессии, но мне нужно больше как совет.

Заранее спасибо

1 Ответ

2 голосов
/ 21 ноября 2010

Вам придется изменить либо индексы таблицы, либо код библиотеки сеансов, чтобы ограничить одного пользователя одним сеансом.Это можно сделать следующим образом:

  • Добавление уникального индекса для имени пользователя (или идентификатора) и идентификатора файла cookie / сеанса
  • Изменение кода библиотеки на INSERT OR REPLACE в зависимости от пользователя/ cookie
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...