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 相关文章推荐
什么是MVC,好东西啊
May 03 PHP
基于Windows下Apache PHP5.3.1安装教程
Jan 08 PHP
PHP UTF8中文字符截断函数代码
Sep 11 PHP
解析PHP获取当前网址及域名的实现代码
Jun 23 PHP
如何在smarty中增加类似foreach的功能自动加载数据
Jun 26 PHP
php格式化日期和时间格式化示例分享
Feb 24 PHP
人脸识别测颜值、测脸龄、测相似度微信接口
Apr 07 PHP
基于PHP实现通过照片获取ip地址
Apr 26 PHP
CodeIgniter常用知识点小结
May 26 PHP
PHP编程实现多维数组按照某个键值排序的方法小结【2种方法】
Apr 27 PHP
YII框架中使用memcache的方法详解
Aug 02 PHP
PHP微商城开源代码实例
Mar 27 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
ftp类(myftp.php)
2006/10/09 PHP
PHP中防止SQL注入攻击和XSS攻击的两个简单方法
2010/04/15 PHP
测试PHP连接MYSQL成功与否的代码
2013/08/16 PHP
php计算整个目录大小的方法
2015/06/19 PHP
Laravel 5使用Laravel Excel实现Excel/CSV文件导入导出的功能详解
2017/10/11 PHP
DIV外区域Click后关闭DIV的实现代码
2011/12/21 Javascript
window.open的页面如何刷新(父页面)上层页面
2012/12/28 Javascript
jquery显示隐藏input对象
2014/07/21 Javascript
JavaScript使用Max函数返回两个数字中较大数的方法
2015/04/06 Javascript
jQuery切换所有复选框选中状态的方法
2015/07/02 Javascript
详解js中构造流程图的核心技术JsPlumb
2015/12/08 Javascript
Bootstrap弹出框(modal)垂直居中的问题及解决方案详解
2016/06/12 Javascript
React Native实现简单的登录功能(推荐)
2016/09/19 Javascript
微信小程序 Audio API详解及实例代码
2016/09/30 Javascript
Javascript实现图片懒加载插件的方法
2016/10/20 Javascript
jQuery弹出div层过2秒自动消失
2016/11/29 Javascript
Vue数据驱动模拟实现1
2017/01/11 Javascript
理解 Node.js 事件驱动机制的原理
2017/08/16 Javascript
基于ts的动态接口数据配置的详解
2019/12/18 Javascript
在elementui中Notification组件添加点击事件实例
2020/11/11 Javascript
简单的连接MySQL与Python的Bottle框架的方法
2015/04/30 Python
python实现字典(dict)和字符串(string)的相互转换方法
2017/03/01 Python
Python+selenium 获取一组元素属性值的实例
2018/06/22 Python
Python编程快速上手——正则表达式查找功能案例分析
2020/02/28 Python
Python grpc超时机制代码示例
2020/09/14 Python
Python利用imshow制作自定义渐变填充柱状图(colorbar)
2020/12/10 Python
HTML5中5个简单实用的API
2014/04/28 HTML / CSS
波兰家具和室内装饰品购物网站:Vivre
2018/04/10 全球购物
意大利巧克力店:Chocolate Shop
2019/07/24 全球购物
碧欧泉Biotherm加拿大官方网站:法国高端护肤品牌
2019/10/18 全球购物
心理健康教育心得体会
2013/12/29 职场文书
村干部承诺书
2014/03/28 职场文书
2014年妇委会工作总结
2014/12/10 职场文书
年度考核登记表个人总结
2015/03/06 职场文书
南京大屠杀观后感
2015/06/02 职场文书
nginx搭建图片服务器的过程详解(root和alias的区别)
2021/03/31 Servers