Пользовательский выход из системы неактивности PHP

Я хочу, чтобы мои пользователи вышлись из системы автоматически после X минут неактивности. Я также хочу иметь все уничтоженные сессии.

Как это может быть сделано? Как я могу проверить на неактивность, затем выполняют функцию для входа их???

6
задан user342391 18 June 2010 в 10:42
поделиться

5 ответов

Вы также можете сделать:

$_SESSION['loginTime'] = time();

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

if($_SESSION['loginTime'] < time()+20*60){ logout(); }
3
ответ дан 8 December 2019 в 05:53
поделиться

Механизм сессий PHP уже имеет сборщик мусора, основанный на таймауте бездействия. Вам не о чем беспокоиться.

2
ответ дан 8 December 2019 в 05:53
поделиться

Вы можете установить предел времени ожидания сеанса, например:

ini_set('session.gc_maxlifetime',30);

Вот возможное решение для вас.

4
ответ дан 8 December 2019 в 05:53
поделиться

Используйте unset ($ _ SESSION ['NAME']); или session_destroy (); . Вы также можете изменить значение сеанса.

Чтобы сделать это в определенное время, вам нужно будет установить метку времени в базе данных, а затем вызвать ее, чтобы проверить, не превышает ли она X минут. Посмотрите ссылку внизу.

Лично я просто использую куки и заставляю их истекать в определенное время, но независимо от того, что плавает ваша лодка.

Если текущее время более чем на 30 секунд превышает время X (из базы данных)

0
ответ дан 8 December 2019 в 05:53
поделиться

В зависимости от того, насколько быстрым является ваш сервер и сколько у вас пользователей, вы можете настроить отправку запроса на ваш сервер всякий раз, когда пользователь что-либо делает (перемещается, нажимает кнопку и т. Д.). Из этого запроса обновите таблицу SQL, указав время их последней активности.

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

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

2
ответ дан 8 December 2019 в 05:53
поделиться
Другие вопросы по тегам:

Похожие вопросы: