PHP登录(连接数据库)小案例
实现效果


数据库信息


代码示例:

1. login.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body> <div style="width: 250px;height: 200px;border: solid 1px;">
<form action="service.php" method="post">
用户名:<input type="text" name="username"><br/>
密码:<input type="text" name="password"><br/>
<input type="checkbox" name="remember"
<?php if(!empty($_POST['remember'])){echo 'checked="checked"';}?>>
记住我<br/> <input type="submit" value="登录"><br/>
<div align="right">
<a href="recoverypassword.php">忘记密码</a><br/>
<a href="register.php">注册</a><br/>
<a href="changepassword.php">修改密码</a>
</div>
</form>
</div>
</body>
</html>
2. index.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<div style="width: 250px;height: 200px;border: solid 1px;">
<?php
session_start();
?>
欢迎您---<?php echo $_SESSION['username']?>
<div align="right">
<a href="zhuxiao.php">注销</a>
</div>
</div>
</body>
</html>
3. changepassword.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<div style="width: 250px;height: 200px;border: solid 1px;">
<h4 align="center">changepassword.php</h4>
<form action="changepassword_service.php" method="post">
用户名:<input type="text" name="username"><br/>
原密码:<input type="text" name="oldpassword"><br/>
新密码:<input type="text" name="newpassword"><br/>
<input type="submit" value="修改密码"><br/>
<div align="right">
<a href="login.php">登录</a>
</div>
</form>
</div> </body>
</html>
4. changgepassword_service.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<?php
//连接数据库服务器
$link = mysqli_connect("127.0.0.1","root","liupw")
or die("连接失败".mysqli_error($link)."<br/>");
echo "连接成功"."<br/>";
//选择数据库
$selectDB=mysqli_select_db($link, "usermanager")
or die("选择数据库usermanager失败"."<br/>");
echo "选择数据库usermanager成功"."<br/>"; //获取表单提交的数据
$username = $_POST["username"];
$oldpassword = $_POST["oldpassword"];
$newpassword=$_POST["newpassword"]; //表的查询
$query=mysqli_query($link, "select * from usertable")
or die("查询失败"."<br/>");
echo "查询成功"."<br/>";
while ($result_array = mysqli_fetch_array($query)) {
if($username==$result_array["username"]){
if($oldpassword==$result_array["password"]){
$query=mysqli_query($link, "update usertable set password='$newpassword' where username ='$username' ")
or die("修改密码失败"."<br/>");
header("location:login.php");
}
else {
echo "您还没有注册";
}
}
} //关闭数据库服务器
mysqli_close($link); ?>
</body>
</html>
5. recoverypassword_service.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<?php
//连接数据库服务器
$link = mysqli_connect("127.0.0.1","root","liupw")
or die("连接失败".mysqli_error($link)."<br/>");
echo "连接成功"."<br/>";
//选择数据库
$selectDB=mysqli_select_db($link, "usermanager")
or die("选择数据库usermanager失败"."<br/>");
echo "选择数据库usermanager成功"."<br/>"; //获取表单提交的数据
$username = $_POST["username"];
$eamil = $_POST["eamil"]; //表的查询
$query=mysqli_query($link, "select * from usertable")
or die("查询失败"."<br/>");
echo "查询成功"."<br/>";
while ($result_array = mysqli_fetch_array($query)) {
if($username==$result_array["username"]){
if($eamil==$result_array["usermail"]){
$query=mysqli_query($link, "update usertable set password='666' where username ='$username' ")
or die("插入失败"."<br/>");
header("location:login.php"); }
}
} //关闭数据库服务器
mysqli_close($link); ?>
</body>
</html>
6. recoverypassword.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<div style="width: 250px;height: 200px;border: solid 1px;">
<h4 align="center">recoverypassword.php</h4>
<form action="recoverypassword_service.php" method="post">
用户名:<input type="text" name="username"><br/>
邮箱:<input type="text" name="eamil"><br/>
<input type="submit" value="重置密码"><br/>
</form>
</div>
</body>
</html>
7. register_service.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<?php
//连接数据库服务器
$link = mysqli_connect("127.0.0.1","root","liupw")
or die("连接失败".mysqli_error($link)."<br/>");
echo "连接成功"."<br/>";
//选择数据库
$selectDB=mysqli_select_db($link, "usermanager")
or die("选择数据库usermanager失败"."<br/>");
echo "选择数据库usermanager成功"."<br/>"; //获取表单提交的数据
$username = $_POST["username"];
$password = $_POST["password"];
$repassword=$_POST["repassword"];
$useremail=$_POST["email"]; if($password==$repassword){
$query=mysqli_query($link, "insert into usertable values('$username','$password','$useremail')")
or die("插入失败"."<br/>");
header("location:login.php");
}
//表的查询 //关闭数据库服务器
mysqli_close($link); ?>
</body>
</html>
8. regiser.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<div style="width: 250px;height: 200px;border: solid 1px;">
<h4 align="center">register.php</h4>
<form action="register_service.php" method="post">
用户名:<input type="text" name="username"><br/>
密码:<input type="text" name="password"><br/>
确认密码:<input type="text" name="repassword"><br/>
邮箱:<input type="text" name="email"><br/>
<input type="submit" value="注册"><br/>
<div align="right">
<a href="login.php">登录</a>
</div>
</form>
</div> </body>
</html>
9. service.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<?php
//连接数据库服务器
$link = mysqli_connect("127.0.0.1","root","liupw")
or die("连接失败".mysqli_error($link)."<br/>");
echo "连接成功"."<br/>";
//选择数据库
$selectDB=mysqli_select_db($link, "usermanager")
or die("选择数据库usermanager失败"."<br/>");
echo "选择数据库usermanager成功"."<br/>";
//表的查询
$query=mysqli_query($link, "select * from usertable")
or die("查询失败"."<br/>");
echo "查询成功"."<br/>";
//获取表单提交的数据
$username = $_POST["username"];
$password = $_POST["password"]; while ($result_array = mysqli_fetch_array($query)) {
if($username==$result_array["username"]){
if($password==$result_array["password"]){
session_start();
$_SESSION['username']=$username;
header("location:index.php");
}else{
echo "用户密码不正确";
}
}
} //关闭数据库服务器
mysqli_close($link); ?>
</body>
</html>
10. zhuxiao.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body>
<?php
//连接数据库服务器
$link = mysqli_connect("127.0.0.1","root","liupw")
or die("连接失败".mysqli_error($link)."<br/>");
echo "连接成功"."<br/>";
//选择数据库
$selectDB=mysqli_select_db($link, "usermanager")
or die("选择数据库usermanager失败"."<br/>");
echo "选择数据库usermanager成功"."<br/>";
//表的查询
$query=mysqli_query($link, "select * from usertable")
or die("查询失败"."<br/>");
echo "查询成功"."<br/>";
//获取表单提交的数据
session_start();
$username = $_SESSION['username']; while ($result_array = mysqli_fetch_array($query)) {
if($username==$result_array["username"]){
mysqli_query($link, "delete from usertable where username='$username'");
echo "注销成功";
break;
}
} //关闭数据库服务器
mysqli_close($link); ?>
</body>
</html>
PHP登录(连接数据库)小案例的更多相关文章
- session应用----登录验证小案例
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"% ...
- 《java入门第一季》之类小案例(模拟用户登录)
首先是做一个用户登录的小案例.在此基础上加入其它逻辑. import java.util.Scanner; /* * 模拟登录,给三次机会,并提示还有几次.如果登录成功,就可以玩猜数字小游戏了. * ...
- Session小案例------完成用户登录
Session小案例------完成用户登录 在项目开发中,用户登陆功能再平常只是啦,当用户完毕username和password校验后.进入主界面,须要在主界面中显示用户的信息,此时用ses ...
- JSP +MySQL实现网站的登录与注册小案例
为了练手,我就自己试着做了一个网站的登录与注册的小案例.由于没有做美化处理,所以界面并不是很好看. 网站实现的功能如下: 用户首次注册功能 用户登录功能 项目目录展示: 下面我将会分模块展示 注册模块 ...
- MVC 小案例 -- 信息管理
前几次更新博客都是每次周日晚上到周一,这次是周一晚上开始写,肯定也是有原因的!那就是我的 Tomact 忽然报错,无法启动,错误信息如下!同时我的 win10 也崩了,重启之后连 WIFI 的标志也不 ...
- Eclipse使用JDBC小案例
JDBC(Java Database Connectivity:Java访问数据库的解决方案)定义一套标准接口,即访问数据库的通用API,不同数据库厂商根据各自数据的特点去实现这些接口. JDBC是J ...
- WEB 小案例 -- 网上书城(四)
针对于这个小案例我们今天讲解结账操作,也是有关这个案例的最后一次博文,说实话这个案例的博文写的很糟糕,不知道该如何去表述自己的思路,所以内容有点水,其实说到底还是功力不够. 处理思路 点击结账,发送结 ...
- 一个ssm综合小案例-商品订单管理----写在前面
学习了这么久,一直都是零零散散的,没有把知识串联起来综合运用一番 比如拦截器,全局异常处理,json 交互,RESTful 等,这些常见技术必须要掌握 接下来呢,我就打算通过这么一个综合案例把这段时间 ...
- session的两个小案例
学完了session,写两个小案例加深一下对session的巩固. 1. 用户登陆案例 登陆html页面提交后,将参数带给处理登陆的servlet,该servlet将获得登陆的用户名和密码,并将这些信 ...
- Java图形界面开发—简易登录注册小程序
登录注册小代码,将学过的一些小知识融合在一起进行了使用,加深印象.本例中如果有注释不详细的地方,详见其它博客. Java程序操作数据库SQLserver详解 功能介绍:简单的登录注册系统,使用了数据库 ...
随机推荐
- 概率DP入门学习QAQ
emmmm博客很多都烂尾了...但是没空写..先写一下正在学的东西好了 概率DP这东西每次考到都不会..听题解也是一脸懵逼..所以决定学习一下这个东东..毕竟NOIP考过...比什么平衡树实在多了QA ...
- 【Android XML】Android XML 转 Java Code 系列之 介绍(1)
最近在公司做一个项目,需要把Android界面打包进jar包给客户使用.对绝大部分开发者来说,Android界面的布局以XML文件为主,并辅以少量Java代码进行动态调整.而打包进jar包的代码,意味 ...
- 2017多校第4场 HDU 6078 Wavel Sequence DP
题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=6078 题意:求两个序列的公共波形子序列的个数. 解法: 类似于最长公共上升子序列,对于每个i,只考虑存 ...
- freemark基础知识
前言:使用freemarker对应生成一个html文件,保存到磁盘,访问文件就不一定使用tomcat,可以使用nginx(http服务器)访问.可以使用freemaker工具生成.只生成一次,html ...
- API(选项/数据 选项/dom)
选项/数据 data 类型: Object | Function 限制: 组件的定义只接受function var data = { a: 1 } // 直接创建一个实例 var vm = new V ...
- canvas画画板,canvas画五角星,canvas制作钟表、Konva写钟表
制作一个画画板,有清屏有橡皮擦有画笔可以换颜色 style样式 <head> <meta charset="UTF-8"> <title>画画板 ...
- ip和子网掩码的判断
只要记住B类IP的范围就好了(128以下的是A,128~191是B段,192以上是C段) 比如B类,网络地址为前两段,后面两段是主机地址,所以网络标识应该是255.255.0.0
- java中的数组与集合相互转换
1.数组转换成集合 数组转换为集合,用Arrays.asList方法. public static void main(String[] args) { String[] arr = {"a ...
- conso.log占位符
%d占位符表示number %s占位符表示string %f占位符表示浮点数 %o占位符表示对象
- Python+Selenium 自动化实现实例-获取页面元素信息(百度首页)
#coding=utf-8from selenium import webdriverdriver = webdriver.Chrome()driver.get("http://www.ba ...