php 怎么设置cookie记住密码
时间:2021-09-22
来源:互联网
标签:
今天PHP爱好者给大家带来php设置cookie记住密码的方法:1、在登录login.php页面中,进行表单设置;2、验证登录页面表单信息,并创建cookie;3、检验session,利用cookie进行赋值即可。希望对大家有所帮助。

本文操作环境:windows7系统、PHP7.1版,DELL G3电脑
php实现记住密码下次自动登陆
这篇博客里面还写到 实现“记住我的登录状态”的功能方法,简言之,就是对首先对session进行用户信息赋值,检测session,失效后,利用cookie对其赋值;
在实现过程中,根据网上一些代码贴,整理出以下代码:另外可以参考PHP 登录记住密码实现思路
在登录login.php页面中,进行表单设置:
<?php
session_start();
?>
<form action="login_chk.php" method="post">
login_chk.php页面用于验证登录页面表单信息,并创建cookie:
1 <?php 2 header("Content-type:text/html;charset=gb2312"); 3
4 session_start(); 5 include_once("conn/conn.php"); //加载数据库连接文件 6
7 error_reporting(0); 8
9 if(empty($_POST['username']) or empty($_POST['pass'])){10 echo "<script language='javascript'>alert('用户名和密码不能为空!');history.go(-1);</script>";11 }12 else{
13 $username=$_POST['username'];14 $pass=$_POST['pass'];15 $password = md5($pass);16 $remember = $_POST['remember'];
17
18 $testrst = sqlsrv_query($conn, "select * from Employee where name like '$username' or number like '$username'"); //执行查询操作
19
20 if(!empty($remember)){ //如果用户选择了,记录登录状态就把用户名和加了密的密码放到cookie里面
21 setcookie("username", $username, time()+3600*24*30);
22 setcookie("password", $pass, time()+3600*24*30);
23 }
24
25
26
27
28
29 if(sqlsrv_has_rows($testrst)){30
31 $rst = sqlsrv_query($conn, "select * from Employee where (name like '$username' or number like '$username') and pwd = '$password'");32
33
34 if(sqlsrv_has_rows($rst)){ //判断登录用户名和密码是否正确35 $adminrow = sqlsrv_fetch_array($rst);37 $userwhethe = 0;38 $_SESSION['id']=$adminrow[0];
41 $_SESSION['number']=$adminrow[1];42 $_SESSION['name']=$adminrow[2];43 if($username == $adminrow[1]){44 $_SESSION['type'] = 1;45 }else{46 $_SESSION['type'] = 2;47 }57
59 echo "<meta http-equiv=\"refresh\" content=\"0;url=menu.php\" />";60 64 }else{65 echo "<script>alert('密码错误,请重新登录。');history.go(-1);</script>";66 }67 }else{68 echo "<script>alert('该用户名不存在!,请重新登录。');history.go(-1);</script>";69 }70 }71
72 ?>
menu.php以及其他功能页面都会检查一遍session:
<?php
session_start();
include_once("conn/conn.php");
error_reporting(0);
if(empty($_SESSION['name']) and empty($_SESSION['id'])){ //判断当前用户是否为登录状态
echo "<script>alert('请登录后再进行执行操作!');history.go(-1);</script>";
}else{
?>
网页主体
?>
至于检验session,失效利用cookie进行赋值的操作,在index1.php(index的检查页)中实现:
1 <?php 2 session_start(); 3
4 if(empty($_SESSION['username'])){ //检查一下session是不是为空
5 if(empty($_COOKIE['username']) || empty($_COOKIE['password'])){
6 header("location:login.php");
7 }else{
8 $_SESSION['name'] = $_COOKIE['username'];
9 header("location:menu.php");
10 }
11
12 }13 ?>
另外,考虑到用户有退出系统或者注销再登录的需要,设置了退出页面logout.php:
<?php
session_start();
unset($_SESSION['username']);
unset($_SESSION['password']);
setcookie('username','',0);
setcookie('password','',0);
header("location:index.php");
?>
实现后,使用流畅。但对密码的cookie和session保存感觉不是很恰当,在用户登录界面也没有对密码表单进行值得默认保存,这个方面的功能还需要完善。
以上就是php 怎么设置cookie记住密码的详细内容,更多请关注php爱好者其它相关文章!
-
4mp摄像头是多少像素?4mp和1080p有什么区别? 时间:2025-12-16 -
电脑出现normal.dotm错误怎么办?解决方法是什么? 时间:2025-12-15 -
normal.dotm在哪个文件夹里 如何删除normal模板 时间:2025-12-15 -
d3dll.dll不能启动怎么办?怎么修复? 时间:2025-12-15 -
psrpc.dll缺失的原因及解决方法 时间:2025-12-15 -
JavaScript插件Lightbox.js用法详解 时间:2025-12-15
今日更新
-
3D漫画永久免费登录入口-3D漫画在线免费观看下拉式
阅读:18
-
VIP用户专属特权一览:解锁你的尊享权益与独家福利
阅读:18
-
中学化学学科网成绩查询登录入口-学科网官网登录入口
阅读:18
-
披萨梗是什么梗?揭秘网络热词披萨梗的爆笑由来和流行密码,看完秒懂!
阅读:18
-
绯月仙行录官网在哪-绯月絮语正版入口
阅读:18
-
欧易客户服务响应时间解析 快速解答您的疑问
阅读:18
-
粉色漫画免费app官方入口-粉色漫画app正版下载入口
阅读:18
-
学习通网页版登录入口一键直达 学校通官方免费在线高效使用
阅读:18
-
披萨是什么梗其实是网友对流行文化的幽默调侃,想知道具体含义就点进来看看吧!
阅读:18
-
海棠文学城最新官网入口-海棠文学城官网链接一键直达
阅读:18










