【发布时间】:2012-09-18 09:05:34
【问题描述】:
我在下面有一段代码,其中会话变量可以持续 12 小时:
ini_set('session.gc_maxlifetime',12*60*60);
ini_set('session.gc_divisor', '1');
ini_set('session.gc_probability', '1');
ini_set('session.cookie_lifetime', '0');
但是我的问题是,是否可以在 12 小时过去且会话变量已过期后注销用户?换句话说,我有一个teacherlogout.php 页面,经过12 小时后,一旦用户导航到另一个页面或12 小时后刷新页面,它是否可以将用户重定向到注销页面?
更新:
这可行吗:
if ((isset($username)) && (isset($userid))){
...//WHOLE CODE
}else{
header( 'Location: teacherlogout.php' ) ;
}
【问题讨论】:
-
我认为这会在会话到期时自动发生?
-
对我来说,如果过了 12 小时并且我刷新了页面,那么它会显示相同的页面,但会显示未定义变量的通知。我想要的是,如果 12 小时过去了,然后导航到teacherlogout.php(自动或当用户下一个刷新页面时),以便它将用户注销并且他们不会看到这些通知
-
嗯,你在你的代码中检查这个吗?类似于: if(isset($_session['LoggedIn'])){ showPage(); }else{ showTeacherLogin(); }
-
另外,在测试代码时,实际上不要等待 12 小时,将 maxtime 设置为 30 秒或一分钟...
-
我在我的代码中包含了一个更新,这可以工作吗?
标签: php