Я хотел бы сделать свой веб-сайт для разрешения только одной сессии за один раз. Например, позвольте, говорят, что у пользователя есть вход в систему моего веб-сайта на Firefox, если пользовательский вход в систему снова другого браузера как опера на том же компьютере или другом компьютере, сессия на Firefox будет уничтожена. Однако сессия на Firefox осталась, если это остается как одна сессия. Я могу знать, как я могу сделать это? Я использую php и апача.Спасибо.
С уважением. Benjamin
Я предлагаю вам сделать что-то вроде этого:
Предположим, когда пользователь «A» входит в систему «Com_1» в первый раз. Сохраните уникальный код в базе данных для этого сеанса, а также для пользовательского сеанса.
Между тем, если он (пользователь «A») снова входит в систему на «com_2», то проверьте его статус в базе данных и обновите уникальный код в базе данных.
снова назад, если тот же пользователь (пользователь «A») обновит страницу на «com_1», нам все, что вам нужно сделать, это проверить уникальный код из сеанса и сопоставить его с базой данных, это точно не совпадение, затем выйдите из системы и уничтожьте сеанс.
Для сохранения входа пользователя в систему, даже если браузер закрыт, вы можете сохранить файл cookie в браузере и соответственно повторно сгенерировать сеанс.
Надеюсь, это поможет. Спасибо.
Вы можете использовать следующий алгоритм
недействительно ()
сеанс и уменьшает значение в базе данных Кредит Божо, потому что он опубликовал это, отвечая на вопрос здесь
Сохранить пары IP пользователя => SESSION_ID в базе данных. Когда пользователь пытается загрузить вашу страницу, вы должны сравнить фактическую пару IP => SESSION_ID, а затем разрешить / запретить, если пара в порядке / отличается.
Хранить в центральной базе данных таблицу или текстовый файл, в котором указано, кто вошел в систему в данный момент. Если пользователь уже вошел в систему в другом сеансе, аннулируйте этот сеанс, установив флаг «вошел в систему» в значение false.
Я думаю, что вам нужно сделать что-то вроде этого: