2015-02-12 87 views
1

我正在PHP Website.I想在我的网站自动注销功能。 基于会话过期的自动注销功能。一次会话自动过期注销 。 但我无法确定会话过期以及如何在会话过期后注销 。 请帮我...会话过期后自动注销

+0

'if(!$ _ SESSION){header('Location:logout.php'); }' – Daan 2015-02-12 07:33:04

回答

1

在会话中保存以下内容。

您执行操作的最后时间(我做在下面的例子中只是每当我刷新页面)

检查,如果这些两者之间的差大于你想自动超时是。如果是这样,请参阅退出,如果没有,请发送到请求的页面。

<?php 
session_start(); 
if(!empty($_SESSION['user'])) { 
    if(isset($_SESSION['activiteit']) && (time() - $_SESSION['activiteit'] > 1800)){ 
     session_unset();  
     session_destroy(); 
     include_once('inc/admin/login.php'); 
    } else { 
     include_once('inc/admin/adminpanel.php'); 
    } 
}else{ 
    include_once('inc/admin/login.php'); 
} 
$_SESSION['activiteit'] = time(); 
?> 

所以在技术上这里发生的是它将时间变量中的活动变量减去。如果差异大于1800,我会破坏并取消设置会话并将其引用到登录页面。如果没有,我将它引用到管理面板。如果用户根本没有会话用户,则会自动引用登录屏幕。

希望这会有帮助

+0

谢谢它的工作.. – Swapnil 2015-02-13 07:26:27

+0

如果它回答你的问题,请接受它作为正确的答案,否则人们可能会认为它尚未解决。 – Dorvalla 2015-02-13 16:06:56

0

你只需要检查你的$ _SESSION的值。如果其值为false,则重定向到注销页面或执行断开用户的功能。