通过PHP&MySQL成功实现修改密码 + 防止通过url强行进入系统详细步骤
发表于:2024-11-28 作者:热门IT资讯网编辑
编辑最后更新 2024年11月28日,本文主要给大家介绍通过PHP&MySQL成功实现修改密码 + 防止通过url强行进入系统详细步骤,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下
本文主要给大家介绍通过PHP&MySQL成功实现修改密码 + 防止通过url强行进入系统详细步骤,文章内容都是笔者用心摘选和编辑的,具有一定的针对性,对大家的参考意义还是比较大的,下面跟笔者一起了解下通过PHP&MySQL成功实现修改密码 + 防止通过url强行进入系统详细步骤吧。
页面:
index.php 登陆页面,输入默认密码登陆系统
check.php 核查页面,通过查询数据库检测密码是否正确 --> 正确,则进入系统 或 错误,提示"密码错误",返回登录页面
system.php 系统页面,内含"修改密码"链接
change.php 输入新密码修改页面
changePwd.php 修改密码页面
关键代码:
index.php
check.php
connect_error) { die("连接失败: " . $conn->connect_error);}$sql = "SELECT password FROM admin"; //此处涉及名称是admin的数据表,内部有name 和password两个字段,值分别是admin 和 1$result = $conn->query($sql); if ($result->num_rows > 0) { while($row = $result->fetch_assoc()) { $adminkey = $row["password"]; //设$adminkey是管理员密码,将从数据表中读取的数据赋值进去 }}$conn->close(); /************************请在上方修改管理员密码,默认是'1' *************************/ if( isset($_POST["submit"]) && $_POST["submit"] = "登录"){ if($_POST['psd'] == $adminkey){ //如果输入的密码和数据库中的默认密码相同,则进入系统 header("Location:system.php"); exit; }else{ ?> system.php修改密码
change.php
changePwd.php
●防止通过url强行进入系统
比如,网站名是www.xxx.com,浏览者注意到这是某系统的登录页面后,可能一试 http://www.xxx.com/system.php 就绕过输入密码进入了系统。。。。【小白级】
可以加一个检查页面 checkInfo.php
先在密码核查页面 check.php 更改:
if( isset($_POST["submit"]) && $_POST["submit"] = "登录"){ if($_POST['psd'] == $adminkey){ session_start(); $_SESSION["loginKey"] = 101; //101随缘弄的,别的也行 // session 变量用于存储关于用户会话(session)的信息,或者更改用户会话(session)的设置。Session 变量存储单一用户的信息,并且对于应用程序中的所有页面都是可用的所以,可利用此,只有通过密码验证,才会生成$_SESSION["loginKey"],从而在之后的页面如system.php 的开头加入检查页面 checkInfo.php ,检查有没有生成的$_SESSION["loginKey"]就可以辨别有没有绕过密码强行进入header("Location:system.php"); exit; }else{ ?>
再写checkInfo.php
举例
在system.php开头加入:
...... .. .. ..
注: session_start(); 启动会话时,之前代码不能有任何输出!(如echo '...'; alert("....");)
建议直接扔到开头
看完以上关于通过PHP&MySQL成功实现修改密码 + 防止通过url强行进入系统详细步骤,很多读者朋友肯定多少有一定的了解,如需获取更多的行业知识信息 ,可以持续关注我们的行业资讯栏目的。