作者thinklu (包子)
看板PHP
标题[请益] 请问如何知道session timeout
时间Wed Jun 15 09:59:31 2011
不好意思~我是PHP的初学者
我正在做login的东西~
在一开始我用:
session_set_cookie_params(60);
session_start();
来设定timeout时间
接着我做了:
$_SESSION['un'] = $username;
来指派值~
之後log in成功~我跳到了另一个php档~
在一进去我就做了:
if ( ! isset( $_SESSION['un'] ) ) {
echo '<meta http-equiv=REFRESH CONTENT=3;url=login.php>';
}
来确定使用者有log in~不然我就把他redirect出去
不好意思讲一堆~现在问题来了~
我想做:
if(/*timeout happens*/) {
echo '<meta http-equiv=REFRESH CONTENT=3;url=login.php>';
}
可是我不知道/*timeout happens*/ 应该要写什麽~
可以请各位大大帮忙吗?
我有先找过一堆资料了~可是没有找到我想要的~
所以来这边问问看各位~肛温~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 76.170.150.223
1F:推 mrbigmouth:session过期後就自动消失了啊? 检查session即可 06/15 10:21
2F:推 allenmusic:那个timeout happens是登出页面吗 06/15 10:21
3F:→ mrbigmouth:如果你是要登入後经过一定时间自动转向 php做不到 06/15 10:22
4F:推 allenmusic:检验登出的话 填 !$__SESSION['un'] 06/15 10:23
5F:→ mrbigmouth:请把你的过期时间算出来输出给html或js做处理 06/15 10:23
6F:→ mrbigmouth:让登入的浏览者在时间到了之後自动转出即可 06/15 10:23
7F:→ allenmusic:那个timeout happens <意思好像是登出转到登入页面 06/15 10:25
8F:→ allenmusic:原po你用的语法 跟我的好像XD 06/15 10:26
9F:→ thinklu:谢谢大家回答~!!我是想要每跳到一个新的php档时,就检查有 06/15 10:36
10F:→ thinklu:没有登入~session有没有timeout~ 06/15 10:36
11F:→ thinklu:照m大说的~那我只要每次都检查isset($_SESSION)就可以顺便 06/15 10:37
12F:→ thinklu:检查到session有没有timeout了吗? 06/15 10:39
13F:→ thinklu:回a大~对~我先登入了~但是如果session timeout了~我想要跳 06/15 10:40
14F:→ thinklu:出去登入的页面~让使用者在登入一次 06/15 10:41
15F:→ thinklu:另外~m大说的~过期时间部分~可是我该怎麽知道哪个点要算呢 06/15 10:45
16F:→ thinklu:? 没有那种~比如我设定60秒~60秒他一过期~就有个flag可以 06/15 10:45
17F:→ thinklu:去判断~session是否过期了吗? 06/15 10:46
18F:→ allenmusic:如果你一定要用php来判断 时间到自动登出 可以用 06/15 10:53
19F:→ allenmusic:php时间函数+判断有没有登出 06/15 10:56
20F:→ thinklu:谢谢a大~我没有一定要用php来判断>"<~我想知道一个大家比 06/15 11:01
21F:→ thinklu:较常用~比较直接简单的方法XD 以後有要做这种东西~我就会 06/15 11:02
22F:→ thinklu:的方式>"< 06/15 11:02
23F:→ thinklu:谢谢大家!!!!我研究出来了!!XDD 感恩!!!! 06/15 13:50
24F:→ allenmusic:其实最简单就用meta 的refresh功能 设定几秒更新一次 06/15 15:40
25F:→ MOONRAKER:不是isset($_SESSION) 是检查你放进$_SESSION的某个变数 06/15 17:32
26F:→ MOONRAKER:是不是没了 例如isset($_SESSION['uid'])之类的 06/15 17:32
27F:→ MOONRAKER:把你网站需要的session集中在一个阵列或物件里 登出就 06/15 17:33
28F:→ MOONRAKER:unset() 检查登入过期就isset() 这样多个网站才不会 06/15 17:34
29F:→ MOONRAKER:因为session_destroy()这种原子弹函数互相干扰 06/15 17:35
30F:→ thinklu:谢谢大家^^ 06/16 00:19