Как предотвратить сеанс - PullRequest
       2

Как предотвратить сеанс

6 голосов
/ 13 декабря 2010

При переходе в социальную сеть Facebook я вижу, что могу открыть 2 учетные записи (одну в Firefox и другую в Internet Explorer) или несколько учетных записей. Это не очень хорошо, зная, что политика Facebook разрешает открывать только сеанс одновременно.

При запуске сеанса, как предотвратить повторное открытие этого же сеанса (учитывая имя сеанса $_SESSION['user']) в другом браузере (Internet Explorer / Safari / Opera ...)?

В противном случае, как я могу узнать (с помощью PHP), что определенная сессия открыта во всех браузерах, чтобы она не открывалась дважды?

Ответы [ 2 ]

2 голосов
/ 13 декабря 2010
$token = hash('sha256', rand() . microtime() . $_SERVER['REMOTE_ADDR']) // rand as possible
$_SERVER['user'] = $token;
1 голос
/ 13 декабря 2010

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...