我想做一个‘一星期内自动登录’功能,
后端登录代码如下:`
class loginController extends corelibController
{
public function login()
{
if($_POST['autoLogin']==1)
{
ini_set('session.gc_maxlifetime', "604800"); // 秒
ini_set("session.cookie_lifetime","604800"); // 秒
}
session_start();
if(strtolower($_SESSION['vCode'])!=strtolower($_POST['vCode']))
{
echo 'vCode_error';
exit(0);
}
$model=new mongoModel('wind','users');
$name=$model->findOne('name',$_POST['username']);
if(!empty($name))
{
if($name['password']==$_POST['password'])
{
$_SESSION['username']=$_POST['username'];
echo 'success';
}
else
echo 'password_error';
}
else
{
echo 'user_error';
}
}
}`
通过前端传来的‘autoLogin’值来判断用户是否选择了‘一周内自动登录’这个checkbox,如果选择,则更改session和保存了sessionid的cookie的最大保存时间为1个星期。但是我发现这样也不行,cookie的有效期依然为结束会话时销毁,但是我把: ini_set('session.gc_maxlifetime', "604800");
ini_set("session.cookie_lifetime","604800");
这两段代码放到项目入口文件里,cookie的有效期成功到了一个星期以后,这是为啥呢?
新手求问。