制作一个网站的时候,我们经常会遇到要记住密码,下次自动登录,在一个星期内没有落地,一个月内避免着陆这样的需求。这个功能一般是通过cookie。本文将简要介绍如何使用PHP来实现这一要求。当然,有N多的方式达到这个要求。

整个过程是在用户登录时,如果你选择一个时间来记住密码或在一周内没有登陆这个选项,然后在用户成功登陆存储操作完成,自动登录cookie数据到数据库中的用户表,为下次自动登录验证,验证通过自动登录,否则你需要输入用户名和密码登录,保存cookie值可以随机码。

具体示例代码如下所示:

复制代码代码如下所示:

美元($ _post {用户名=装饰'username});

MD5密码=美元(TRIM($ _post { 'password ' }));

ref_url美元美元'req_url_get { } =;

记得_post美元美元= { 'remember}; / /自动登录的标志

err_msg美元=;

如果($用户名= =| |密码= =美元){

err_msg美元=用户名和密码不能为空;

其他{ }

行= getuserinfo美元(美元美元的用户名,密码);

如果(空($行)){

err_msg美元=用户名和密码不正确;

其他{ }

_session美元{ 'user_info} = $行;

如果(!如果用户选择的话,空的(记住){)记录在cookie上加密的用户名和密码。

setcookie(用户名

setcookie(密码

}

如果(strpos(ref_url美元,登录。PHP)= = = false){

标题(位置。ref_url美元);

其他{ }

标题(地点:main_user .php);

}

}

}



除了站点的每个页面,您还应该检查以下功能。

复制代码代码如下所示:

检查用户是否登录

功能checklogin(){

如果(空(美元_session { 'user_info ' })){ / /检查会话是否为空

如果(空(美元_cookie { 'username})| |空(美元_cookie { 'password ' }){ / /)如果会话是空的,并且用户不选择日志。

标题(位置:登录。phpreq_url =美元。_server { 'request_uri}); / /去登录页面,记录URL登录请求,跳过去后,用户体验良好。

}其他用户选择记住登录状态

用户名= getuserinfo($ _cookie { 'username},{ 'password _cookie美元}); / /获取用户的个人数据

如果(空($)){用户名和密码不对,不获取信息,请转到登录页面。

标题(位置:登录。phpreq_url ={ } 'request_uri _server美元。);

其他{ }

_session美元{ 'user_info} = $用户;用户的 / /用户名和密码,在会话的个人资料

}

}

}

}