php+mysql实现简单登录注册修改密码网页


Posted in PHP onNovember 30, 2016

对于php和mysql的连接在许多blog上都有说明,为了将mysql中的查询,修改,插入等操作掌握,本文介绍了一下如何采用mysql做一个登录注册修改密码的网页。

其中,如下

1.登录-即为对数据库中的内容给予查询,并验证html中的信息与数据库是否匹配;
2.注册-即为对数据库中的内容进行插入,注册帐号与密码;
3.修改密码-即为对数据库中的内容进行修改。

这三个操作,我用了8个php和html文本来建立 具体见代码部分
1.登录的主界面index.html:

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="UTF-8"> 
<title>登录注册修改密码系统主页</title> 
<style type="text/css"> 
form { 
 text-align: center; 
} 
</style> 
</head> 
<body> 
 <form action="enter.php" method="post" onsubmit="return enter()"> 
 用户名<input type="text" name="username" id="username"><br> 密码<input 
 type="password" name="password" id="password"><br> <input 
 type="submit" value="登录"> <input type="button" 
 value="注册" onclick="register();"> 
 
 </form> 
 
 <script type="text/javascript"> 
 function enter() 
 { 
 var username=document.getElementById("username").value;//获取form中的用户名 
 var password=document.getElementById("password").value; 
 var regex=/^[/s]+$/;//声明一个判断用户名前后是否有空格的正则表达式 
 if(regex.test(username)||username.length==0)//判定用户名的是否前后有空格或者用户名是否为空 
 { 
 alert("用户名格式不对"); 
 return false; 
 } 
 if(regex.test(password)||password.length==0)//同上述内容 
 { 
 alert("密码格式不对"); 
 return false; 
 } 
 return true; 
 } 
 function register() 
 { 
 window.location.href="register.html";//跳转到注册页面 
 } 
 </script> 
</body> 
</html>

2.登录的后台操作enter.php:

<!doctype html> 
<html> 
<head> 
 <meta charset="UTF-8"> 
 <title>登录系统的后台执行过程</title> 
</head> 
<body> 
 <?php 
 session_start();//登录系统开启一个session内容 
 $username=$_REQUEST["username"];//获取html中的用户名(通过post请求) 
 $password=$_REQUEST["password"];//获取html中的密码(通过post请求) 
 
 $con=mysql_connect("localhost","root","root");//连接mysql 数据库,账户名root ,密码root 
 if (!$con) { 
 die('数据库连接失败'.$mysql_error()); 
 } 
 mysql_select_db("user_info",$con);//use user_info数据库; 
 $dbusername=null; 
 $dbpassword=null; 
 $result=mysql_query("select * from user_info where username ='$username';");//查出对应用户名的信息 
 while ($row=mysql_fetch_array($result)) {//while循环将$result中的结果找出来 
 $dbusername=$row["username"]; 
 $dbpassword=$row["password"]; 
 } 
 if (is_null($dbusername)) {//用户名在数据库中不存在时跳回index.html界面 
 ?> 
 <script type="text/javascript"> 
 alert("用户名不存在"); 
 window.location.href="index.html"; 
 </script> 
 <?php 
 } 
 else { 
 if ($dbpassword!=$password){//当对应密码不对时跳回index.html界面 
 ?> 
 <script type="text/javascript"> 
 alert("密码错误"); 
 window.location.href="index.html"; 
 </script> 
 <?php 
 } 
 else { 
 $_SESSION["username"]=$username; 
 $_SESSION["code"]=mt_rand(0, 100000);//给session附一个随机值,防止用户直接通过调用界面访问welcome.php 
 ?> 
 <script type="text/javascript"> 
 window.location.href="welcome.php"; 
 </script> 
 <?php 
 } 
 } 
 mysql_close($con);//关闭数据库连接,如不关闭,下次连接时会出错 
 ?> 
</body> 
</html>

3.登录成功后的欢迎界面welcome.php:

<!doctype html> 
<html> 
<head> 
<meta charset="UTF-8"> 
<title>欢迎登录界面</title> 
</head> 
<body> 
 
<?php 
session_start (); 
if (isset ( $_SESSION ["code"] )) {//判断code存不存在,如果不存在,说明异常登录 
 ?> 
欢迎登录<?php 
 echo "${_SESSION["username"]}";//显示登录用户名 
 ?><br> 
您的ip:<?php 
 echo "${_SERVER['REMOTE_ADDR']}";//显示ip 
 ?> 
<br> 
您的语言: 
<?php 
 echo "${_SERVER['HTTP_ACCEPT_LANGUAGE']}";//使用的语言 
 ?> 
<br> 
浏览器版本: 
<?php 
 echo "${_SERVER['HTTP_USER_AGENT']}";//浏览器版本信息 
 ?> 
<a href="exit.php">退出登录</a> 
<?php 
} else {//code不存在,调用exit.php 退出登录 
 ?> 
<script type="text/javascript"> 
 alert("退出登录"); 
 window.location.href="exit.php"; 
</script> 
<?php 
} 
?> 
<br> 
 <a href="alter_password.html">修改密码</a> 
 
</body> 
</html>

4.修改密码的主界面alter_password.html:

<!DOCTYPE html> 
<html> 
<head> 
<meta charset="UTF-8"> 
<title>修改密码</title> 
<style type="text/css"> 
 form{ 
 text-align: center; 
 } 
</style> 
</head> 
<body> 
 <?php 
 session_start(); 
 ?> 
 <form action="alter_password.php" method="post" onsubmit="return alter()"> 
 用户名<input type="text" name="username" id ="username" /><br/> 旧密码<input 
 type="password" name="oldpassword" id ="oldpassword"/><br/> 新密码<input 
 type="password" name="newpassword" id="newpassword"/><br/> 确认新密码<input 
 type="password" name="assertpassword" id="assertpassword"/><br/> <input 
 type="submit" value="修改密码" onclick="return alter()"> 
 </form> 
 <script type="text/javascript"> 
 document.getElementById("username").value="<? php echo "${_SESSION["username"]}";?>" 
 </script> 
 
 <script type="text/javascript"> 
 function alter() { 
 
 var username=document.getElementById("username").value; 
 var oldpassword=document.getElementById("oldpassword").value; 
 var newpassword=document.getElementById("newpassword").value; 
 var assertpassword=document.getElementById("assertpassword").value; 
 var regex=/^[/s]+$/; 
 if(regex.test(username)||username.length==0){ 
 alert("用户名格式不对"); 
 return false; 
 } 
 if(regex.test(oldpassword)||oldpassword.length==0){ 
 alert("密码格式不对"); 
 return false; 
 } 
 if(regex.test(newpassword)||newpassword.length==0) { 
 alert("新密码格式不对"); 
 return false; 
 } 
 if (assertpassword != newpassword||assertpassword==0) { 
 alert("两次密码输入不一致"); 
 return false; 
 } 
 return true; 
 
 } 
 </script> 
</body> 
</html>

5.修改密码的后台操作alter_password.php:

<!doctype html> 
<html> 
<head> 
<meta charset="UTF-8"> 
<title>正在修改密码</title> 
</head> 
<body> 
 <?php 
 session_start (); 
 $username = $_REQUEST ["username"]; 
 $oldpassword = $_REQUEST ["oldpassword"]; 
 $newpassword = $_REQUEST ["newpassword"]; 
 
 $con = mysql_connect ( "localhost", "root", "root" ); 
 if (! $con) { 
 die ( '数据库连接失败' . $mysql_error () ); 
 } 
 mysql_select_db ( "user_info", $con ); 
 $dbusername = null; 
 $dbpassword = null; 
 $result = mysql_query ( "select * from user_info where username ='$username';" ); 
 while ( $row = mysql_fetch_array ( $result ) ) { 
 $dbusername = $row ["username"]; 
 $dbpassword = $row ["password"]; 
 } 
 if (is_null ( $dbusername )) { 
 ?> 
 <script type="text/javascript"> 
 alert("用户名不存在"); 
 window.location.href="alter_password.html"; 
 </script> 
 <?php 
 } 
 if ($oldpassword != $dbpassword) { 
 ?> 
 <script type="text/javascript"> 
 alert("密码错误"); 
 window.location.href="alter_password.html"; 
 </script> 
 <?php 
 } 
 mysql_query ( "update user_info set password='$newpassword' where username='$username'" ) or die ( "存入数据库失败" . mysql_error () );//如果上述用户名密码判定不错,则update进数据库中 
 mysql_close ( $con ); 
 ?> 
 
 
 <script type="text/javascript"> 
 alert("密码修改成功"); 
 window.location.href="index.html"; 
 </script> 
</body> 
</html>

6.注册帐号的主界面register.html:

<!doctype html> 
<html> 
<head> 
<meta charset="UTF-8"> 
<title>注册系统</title> 
<style type="text/css"> 
form { 
 text-align: center; 
} 
</style> 
</head> 
<body> 
 
 <form action="register.php" method="post" name="form_register" 
 onsubmit="return check()"> 
 用户名<input type="text" name="username" id="username"><br> 
 密码<input type="password" name="password" id="password"><br> 
 确认密码<input type="password" name="assertpassword" id="assertpassword"><br> 
 <input type="submit" value="注册"> 
 
 </form> 
 
 <script type="text/javascript"> 
 function check() { 
 var username=document.getElementById("username").value; 
 var password=document.getElementById("password").value; 
 var assertpassword=document.getElementById("assertpassword").value; 
 var regex=/^[/s]+$/; 
 
 if(regex.test(username)||username.length==0){ 
 alert("用户名格式不对"); 
 return false; 
 } 
 if(regex.test(password)||password.length==0){ 
 alert("密码格式不对"); 
 return false; 
 } 
 if(password!=assertpassword){ 
 alert("两次密码不一致"); 
 return false; 
 } 
 } 
 </script> 
</body> 
</html>

7.注册帐号的后台操作register.php:

<!doctype html> 
<html> 
<head> 
<meta charset="UTF-8"> 
 <title>注册用户</title> 
</head> 
<body> 
 <?php 
 session_start(); 
 $username=$_REQUEST["username"]; 
 $password=$_REQUEST["password"]; 
 
 $con=mysql_connect("localhost","root","root"); 
 if (!$con) { 
 die('数据库连接失败'.$mysql_error()); 
 } 
 mysql_select_db("user_info",$con); 
 $dbusername=null; 
 $dbpassword=null; 
 $result=mysql_query("select * from user_info where username ='$username';"); 
 while ($row=mysql_fetch_array($result)) { 
 $dbusername=$row["username"]; 
 $dbpassword=$row["password"]; 
 } 
 if(!is_null($dbusername)){ 
 ?> 
 <script type="text/javascript"> 
 alert("用户已存在"); 
 window.location.href="register.html"; 
 </script> 
 <?php 
 } 
 mysql_query("insert into user_info (username,password) values('$username','$password')") or die("存入数据库失败".mysql_error()) ; 
 mysql_close($con); 
 ?> 
 <script type="text/javascript"> 
 alert("注册成功"); 
 window.location.href="index.html"; 
 </script> 
 
 
</body> 
</html>

8.非法登录时退出登录的操作exit.php:

<!doctype html> 
<html> 
<head> 
<meta charset="UTF-8"> 
</head> 
<body> 
<?php 
session_start ();//将session销毁时调用destroy 
session_destroy (); 
?> 
<script type="text/javascript"> 
 window.location.href="index.html"; 
</script> 
</body> 
</html>

9.mysql数据库搭建部分

php+mysql实现简单登录注册修改密码网页

php+mysql实现简单登录注册修改密码网页

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php imagecreatetruecolor 创建高清和透明图片代码小结
May 15 PHP
php截取后台登陆密码的代码
May 05 PHP
基于php split()函数的用法详解
Jun 05 PHP
php json_encode值中大括号与花括号区别
Sep 30 PHP
百度地图API应用之获取用户的具体位置
Jun 10 PHP
PHP使用CURL_MULTI实现多线程采集的例子
Jul 29 PHP
Yii2创建表单(ActiveForm)方法详解
Jul 23 PHP
利用PHP获取汉字首字母并且分组排序详解
Oct 22 PHP
php处理多图上传压缩代码功能
Jun 13 PHP
PHP使用mysqli同时执行多条sql查询语句的实例
Mar 22 PHP
php精度计算的问题解析
Jun 21 PHP
php web环境和命令行环境下查找php.ini的位置
Jul 17 PHP
thinkPHP模板中函数的使用方法示例
Nov 30 #PHP
thinkPHP模板中for循环与switch语句用法示例
Nov 30 #PHP
thinkPHP自定义类实现方法详解
Nov 30 #PHP
php版阿里大于(阿里大鱼)短信发送实例详解
Nov 30 #PHP
php实现异步将远程链接上内容(图片或内容)写到本地的方法
Nov 30 #PHP
PHP实现的同步推荐操作API接口案例分析
Nov 30 #PHP
PHP实现多图上传(结合uploadify插件)思路分析
Nov 30 #PHP
You might like
php读取数据库信息的几种方法
2008/05/24 PHP
PHP开发过程中常用函数收藏
2009/12/14 PHP
php中3种方法统计字符串中每种字符的个数并排序
2012/08/27 PHP
PHP 自定义错误处理函数trigger_error()
2013/03/26 PHP
php去除字符串中空字符的常用方法小结
2015/03/17 PHP
php实现点击可刷新验证码
2015/11/07 PHP
thinkphp实现图片上传功能
2016/01/13 PHP
js 实现无干扰阴影效果 简单好用(附文件下载)
2009/12/27 Javascript
js操作textarea方法集合封装(兼容IE,firefox)
2011/02/22 Javascript
jQuery过滤选择器详解
2015/01/13 Javascript
jquery实现标题字体变换的滑动门菜单效果
2015/09/07 Javascript
javascript实现动态统计图开发实例
2015/11/21 Javascript
基于Node.js的强大爬虫 能直接发布抓取的文章哦
2016/01/10 Javascript
JS 清除字符串数组中,重复元素的实现方法
2016/05/24 Javascript
JavaScript简单下拉菜单特效
2016/09/13 Javascript
JavaScript类的写法
2016/09/17 Javascript
详解Angular.js的$q.defer()服务异步处理
2016/11/06 Javascript
纯javaScript、jQuery实现个性化图片轮播【推荐】
2017/01/08 Javascript
Vue.js实现多条件筛选、搜索、排序及分页的表格功能
2020/11/24 Javascript
一篇看懂vuejs的状态管理神器 vuex状态管理模式
2017/04/20 Javascript
微信小程序 蓝牙的实现实例代码
2017/06/27 Javascript
DataTables添加额外的查询参数和删除columns等无用参数实例
2017/07/04 Javascript
vue+ElementUI实现订单页动态添加产品数据效果实例代码
2017/07/13 Javascript
使用Angular CLI快速创建Angular项目的一些基本概念和写法小结
2018/04/22 Javascript
vue.js 中使用(...)运算符报错的解决方法
2018/08/09 Javascript
Weex开发之地图篇的具体使用
2019/10/16 Javascript
[02:40]DOTA2英雄基础教程 先知
2013/11/29 DOTA
浅谈python和C语言混编的几种方式(推荐)
2017/09/27 Python
python ---lambda匿名函数介绍
2019/03/13 Python
美国著名手表网站:Timepiece
2017/11/15 全球购物
Tostadora意大利:定制T恤
2019/04/08 全球购物
美国购买韩国护肤和美容产品网站:Althea Korea
2020/11/16 全球购物
商务英语应届生自我鉴定
2013/12/08 职场文书
企业人事任命书
2014/06/05 职场文书
党委书记个人检查对照材料思想汇报
2014/10/11 职场文书
终止解除劳动合同证明书
2015/06/17 职场文书