php记住密码怎么实现

php记住密码怎么实现

内容导读

收集整理的这篇技术教程文章主要介绍了php记住密码怎么实现,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1936字,纯文字阅读大概需要3分钟

内容图文

做网站的时候经常会碰到要实现记住密码,下次自动登录,一周内免登陆,一个月内免登陆这种需求。这种功能一般都是通过cookie来实

现的。本篇文章将简单说一下如何使用php实现该需求的。当然实现该需求的方法有N多种。

整个过程就是用户在登陆的时候,如果选择了记住密码或者一周内免登陆等这个选项的时候,则在用户成功登陆操作完成之后,存储一个

实现自动登录的cookie的数据到数据库的用户表里面,作为下次自动登录时验证用。验证通过则自动登录,否则需要输入用户名,密码进

行登录。保存的这个cookie值则可以取一个随机码。

具体示例代码如下:

$username=trim($_POST['username']);$password=md5(trim($_POST['password']));$ref_url=$_GET['req_url'];$remember=$_POST['remember'];//是否自动登录标示$err_msg='';if($username==''||$password==''){ $err_msg="用户名和密码都不能为空";}else{ $row=getUserInfo($username,$password); if(empty($row)){
$err_msg="用户名和密码都不正确"; }else{
$_SESSION['user_info']=$row;
if(!empty($remember)){//如果用户选择了,记录登录状态就把用户名和加了密的密码放到cookie里面
 setcookie("username",$username,time()+3600*24*365);
 setcookie("password",$password,time()+3600*24*365);
}
if(strpos($ref_url,"login.php")===false){
 header("location:".$ref_url);
}else{
 header("location:main_user.php");
} }}

另外在访问网站的每个页面时,都要先进行一遍如下函数的检查。

//检查用户是否登录function checklogin(){ if(empty($_SESSION['user_info'])){//检查一下session是不是为空
if(empty($_COOKIE['username'])||empty($_COOKIE['password'])){//如果session为空,并且用户没有选择记录登录状
 header("location:login.php?req_url=".$_SERVER['REQUEST_URI']);//转到登录页面,记录请求的url,登录后跳转过去,用户体验好。
}else{//用户选择了记住登录状态
 $user=getUserInfo($_COOKIE['username'],$_COOKIE['password']);//去取用户的个人资料
if(empty($user)){//用户名密码不对没到取到信息,转到登录页面
 header("location:login.php?req_url=".$_SERVER['REQUEST_URI']);
}else{
 $_SESSION['user_info']=$user;//用户名和密码对了,把用户的个人资料放到session里面
}
} }}

推荐教程:PHP视频教程

以上就是php记住密码怎么实现的详细内容,更多请关注Gxl网其它相关文章!

内容总结

以上是为您收集整理的php记住密码怎么实现全部内容,希望文章能够帮你解决php记住密码怎么实现所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。

内容备注

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。


本文关键词:

联系我们

在线咨询:点击这里给我发消息

邮件:w420220301@qq.com