Запретить параллельный вход

463
11 июля 2017, 22:32

Мне нужно, чтобы после входа на сайт пользователя под его учётными данными другой человек не смог войти на сайт используя те-же данные, пока активна сессия первого вошедшего. Соответственно, и сам человек не сможет сидеть например с одного компа но с двух разных браузеров.

Сам думаю в сторону сессий, а конкретно - в торону того, чтобы хранить ID сессии в базе рядом с логином и паролем, но тут такая проблема - если пользователь не нажал кнопку "выход", а просто закрыл вкладку, то его сессия не удалится из БД, и он уже не сможет сам-же войти например с телефона или другого ПК.

Есть вариант задать некое время активности сессии, и обновлять эту метку при каждом запросе к сайту, и если время создания прошлой метки раньше, чем текущее время минус время активности, то старая сессия считается не валидной и перезаписывается новой.

Проблема в том, что сайт написан давно и без каких-либо фреймворков, единой точки в приложение нет, есть 200+ файлов, начинающихся с session_start(); (речь идёт о РНР). Подскажите, нет ли более элегантного решения проблемы?

READ ALSO
Изменение меню WP тема Avada

Изменение меню WP тема Avada

Подскажите, как можно решить данную проблему? Есть сайт на теме WP "Avada", у него есть 6 видов меню в самой теме, но мне ни одна из них не подходитКак...

417
Оператор сравнения

Оператор сравнения

Код не хочет работать с оператором сравненияЧто не так? Выделил нужную строку звёздочками

211
Как считать штрих-код?

Как считать штрих-код?

Как получить значение с фотографии на которой изображен штрих-код с помощью php? Искал библиотеки, ни одна не опознает штрих-код из фотографии

305
Как правильно оформить запрос к базе данных?

Как правильно оформить запрос к базе данных?

Прошу совета как правильно обратиться к базе в чем сутьРазрабатываю расширение вот собственно

248