使用cookie实现一周内自动登录

来源:互联网 发布:小时代讲的什么知乎 编辑:程序博客网 时间:2024/05/17 06:52

一般网站的登录界面都会有自动登录的一个选项。现在就来实现一个一周内自动登录的功能。

1、如果当用户登录的时候,在处理页,要判断是否选择了自动登录,然后实现将id和name存进cookie:

if($autologin){
setcookie("userid", $userid, time()+7*24*3600);
setcookte("username", $username, time()*7*24*3600);
}

2、在判断是否登录的时候不仅要判断session还要判断cookie是否有值。
if($_SESSION['userid'] == '' && $_COOKIE['userid'] == ''){
alertMes('请先登录', 'login.php');
}

3、在退出登录的时候也要销毁seesion和cookie。
$_SESSION = array();
if(isset($_COOKIE[session_name()])){
setcookie(session_name(), '', time()-1);
if(isset($_cookie['userid'])){
setcookie('userid', '', time()-1);
}
if(isset($_cookie['username'])){
setcookie('username', '', time()-1);
}

session_destory();
header("location:login.php");
}

4、如果用户是通过cookie登录的,设置session。
$_SESSION['userid'] = $_COOKIE['userid'];
$_SESSION['username'] = $_COOKIE['username'];

最后要说的一点就是,一般的session_id会默认存储在cookie中。

$_SESSION['userid'] = $_COOKIE['userid'];
0 0
原创粉丝点击