Автоматический выход из системы

Как мне создать сценарий, который выйдет из системы через 10 минут бездействия.

Спасибо.


person AAA    schedule 20.03.2011    source источник
comment
возможный дубликат PHP - срок действия сеанса истекает через X минут   -  person Daniel A. White    schedule 20.03.2011
comment
Думаю, разница в том, что это часть бездействия?   -  person Stefan H Singer    schedule 20.03.2011
comment
возможный дубликат Как завершить сеанс PHP после 30 минут?   -  person Pascal MARTIN    schedule 20.03.2011


Ответы (3)


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

person Stefan H Singer    schedule 20.03.2011
comment
В ПОРЯДКЕ. Я понимаю, как это сделать. Но как я могу интегрировать его в свой код: вот он: if (! Isset ($ _ SESSION ['user_name']) && $ _SERVER ['PHP_SELF']! = '/Log.php') {header (Location: http : // $ _ СЕРВЕР [HTTP_HOST]); } - person AAA; 21.03.2011
comment
Хм, полностью зависит от того, чем именно вы хотите заниматься. Я имел в виду, что вы можете сохранить его в таблице базы данных. Но вы должны иметь возможность сделать что-то вроде if (isset ($ _ SESSION ['lastActivityTimestamp'] && $ _SESSION ['lastActivityTimestamp'] ‹десять минут назад) logout (); - person Stefan H Singer; 22.03.2011
comment
В ПОРЯДКЕ. Я скоро попробую. Я свяжусь с вами, если у меня возникнут проблемы. спасибо Стефан. - person AAA; 23.03.2011

Для PHP включите этот код в commonfile

if(isset($_SESSION['last_activetime'])){    
   if(time() - $_SESSION['last_activetime'] > 600) { 
        header("location:logout.php");
        exit;
   }    
}
$_SESSION['last_activetime'] = time(); // when user open page time store in session
person Apoorva Shah    schedule 29.10.2013