我正在设置会话在登录后4小时有效。但是会话正好在四舍五入的时间到期(下午12点,凌晨1点,凌晨2点等等......)
例如:如果在下午12点或12点30分登录,会话将在下午1点到期。
这是我的代码。
// server should keep session data for AT LEAST 4 hour
ini_set('session.gc_maxlifetime', 14400);
session_start();
$_SESSION['login'] = 1;
$login_session_id=session_id();
答案 0 :(得分:0)
您是否在共享服务器上?
如果是这样,您需要将会话目录设置为默认值/ tmp /.
以外的其他目录如果服务器上的任何其他应用程序的会话时间少于一小时,那么无论您的应用程序是什么,都会在一小时内使您的会话数据失效。会话时间设置为。
我花了很多时间去弄清楚,但是一旦你理解了PHP的会话垃圾收集是如何工作的,那就很有意义了。
如果您实际上正在使用CakePHP,那么您可以将会话处理程序设置为使用' cake'而不是' php'这将在app / tmp / session而不是/ tmp。
中存储会话答案 1 :(得分:-1)
<?php
echo " Nfo5o " ;
set_cookie (expire, 84600);
?>