PHP session_set_cookie_params()问题

时间:2013-03-22 10:18:53

标签: php

对于我登录部分的每一页的标题,我添加了以下代码来维护会话:

session_set_cookie_params(1200, '/mysystem');
session_start();

我的意图是,我通过函数session_set_cookie_params()将会话生存期设置为1200秒,路径/mysystem。使用此功能的原因是将会话cookie与同一域中的其他PHP脚本分开,例如http://www.example.com/another_system/

问题是,无论是否有活动(例如在/mysystem下加载其他页面,或刷新页面),会话都会在达到1200秒时到期。

预期行为:会话“倒计时”在活动会话有效时进行页面活动时重置。

我错过了什么?

2 个答案:

答案 0 :(得分:5)

这是它的工作原理。 cookie设置一次,然后开始倒计时。要解决此问题,每次用户与后端交互时,您都必须使用新的到期日期重置cookie。

答案 1 :(得分:1)

你可以尝试time()函数来更新cookie过期时间..

尝试在每个页面中添加time()函数,获取当前页面加载时间并使其过期

by $ expireTime = time()+ 1200;

      <?php

          session_set_cookie_params($expireTime, '/mysystem');
          session_start()
       ?>