PHP+MySql+PDO实现简单登录、注册
最近学习中要使用PHP+MySql实现简单登录注册,看了很多简单案例后发现,并没有人通过PDO实现简单登录注册,要么就是Mysql和MySqli实现,就算实现了意义也不大,js就可以做的事情,没必要放到PHP中去,我却偏偏不相信,保留着一股倔劲,简单的实现了登录注册,下面请看代码,有错误的地方希望大佬们指教!
新建数据库名itcast , 表名user ,执行下面代码
create table user(id int unsigned primary key auto_increment,username varchar(10) not null comment '用户名',password char(20) not null comment '密码',email varchar(40) not null comment '邮箱'
)charset=utf8;insert into user (username,password,email) values
('张三','123456','zhangsan@qq.com');
目录结构
首先从注册前台页面register_html.php开始
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>欢迎注册</title>
</head>
<form action="./register.php" method="post">
<table ><tr><td class="title" colspan="2">欢迎注册新用户</td></tr><tr><th>用户名:</th><td><input type="text" name="username" /></td></tr><tr><th>邮箱:</th><td><input type="text" name="email" /></td></tr><tr><th>密码:</th><td><input type="password" name="password" id="pw1" /></td></tr><tr><th>确认密码:</th><td><input type="password" id="pw2" /></td></tr><tr><td colspan="2" class="td-btn"><input type="submit" value="提交注册" class="button" /><input type="button" value="返回登录" class="button" onclick="location.href='login.php'" /></td></tr>
</table>
</form>
</html>
注册后台页面register.php(注册即是新增)
<?php
header ('Content-type:text/html;charset=utf-8');
//数据库服务器主机名,端口号,选择的数据库,字符集
$dsn = "mysql:host=localhost;dbname=itcast;charset=utf8";
$user = 'root'; //数据库名
$pwd = 'root'; //数据库密码try{$pdo = new PDO($dsn,$user,$pwd);//如果post表单不为空if(!empty($_POST)){//声明变量$fields,用来保存字段信息$fields = array('username','password','email');//声明$values,用来保存值信息$values = array();//遍历$fields,获取输入用户名、密码、邮箱的键和值foreach($fields as $k=>$v){$data = isset($_POST[$v]) ? $_POST[$v] : '';if($data=='') die($v.'字段不能为空!');//赋值给$fields数组$fields[$k] = "$v";//赋值给$values数组$values[] = "'$data'";}//将$fields数组以逗号连接,赋值给$fields,组成insert语句中的字段部分//implode — 将一个一维数组的值转化为字符串$fields = implode(',', $fields);//将$values数组以逗号连接,赋值给$values,组成insert语句中的值部分$values = implode(',', $values);//最后把$fields和$values拼接到insert语句中,注意要指定表名$sql = "insert into user ($fields) values ($values)";if($res = $pdo->query($sql)){//注册成功,自动跳转到会员中心echo '<script>alert("注册成功!");window.location.href="login_html.php";</script>';}else{die ('注册失败!');}}}catch(PDOException $e){echo $e->getMessage().'<br>';echo $e->getLine().'<br>';echo $e->__toString().'<br>';
}
define('APP', 'itcast');
require './register_html.php';
登录前台页面login_html.php
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>欢迎登录</title>
</head>
<body><form method="post" action="./login.php"><table><tr><td>欢迎登录</td></tr><tr><th>用户名:</th><td><input type="text" name="username" /></td></tr><tr><th>密码:</th><td><input type="password" name="password" /></td></tr><tr><td><input type="submit" value="登录" /><input type="reset" value="重新填写" /></td></tr></table></form>
</body>
</html>
登录后台页面login.php
<?php
header ('Content-type:text/html;charset=utf-8');
//数据库相关信息
$dsn = "mysql:host=localhost;dbname=itcast;charset=utf8";
$user = 'root'; //数据库名
$pwd = 'root'; //数据库密码,根据自己的密码更改try{$pdo = new PDO($dsn,$user,$pwd);//如果表单中不为空if(!empty($_POST)){//从表单中获取数据$username = isset($_POST['username']) ? trim($_POST['username']) : '';$password = isset($_POST['password']) ? ($_POST['password']) : '';//执行SQL语句$sql = "select `id`,`password` from `user` where `username`='$username'";if($res = $pdo->query($sql)){ //登录成功,自动跳转到会员中心echo '<script>alert("登录成功");window.location.href="index.php";</script>';}else{//否则提示登录失败die('登录失败!');}}
}catch(PDOException $e){//这段用于出错的时候,方便告诉我们那里错了echo $e->getMessage().'<br>';echo $e->getLine().'<br>'; //显示错误所在多少行echo $e->__toString().'<br>';
}
define('APP', 'itcast');
require './login_html.php';?>
最后是我们登录成功的inex.php页面
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Insert title here</title>
</head>
<body><h1>登录成功!</h1>
</body>
</html>
这里做的并不是很美观,大家可以在这个基础上增加好看的样式,增加两次密码是否相同的判断,使用正则实现注册格式的判断等等,这里就不一一讲了,目的主要是能实现简单的登录注册,嘻嘻!
输入注册信息
点击注册
注册成功,自动跳转到登录页面
输入刚刚注册的信息
点击登录
成功跳转到index.php页面
PHP+MySql+PDO实现简单登录、注册相关推荐
- PHP+Mysql 实现最简单的注册登录
PHP+Mysql 实现最简单的注册登录 一.先将两个服务打开 二.创建数据库 create database test; // 创建一个叫test的数据库 use test; // 进入这个数据库 ...
- tornado 08 数据库-ORM-SQLAlchemy-表关系和简单登录注册
tornado 08 数据库-ORM-SQLAlchemy-表关系和简单登录注册 引言 #在数据库,所谓表关系,只是人为认为的添加上去的表与表之间的关系,只是逻辑上认为的关系,实际上数据库里面的表之间 ...
- PHP个人相册管理系统源码,实现了相册分类和相册分组,还有相册图片管理,数据库采用mysql,实现了登录注册功能
PHP个人相册管理系统,实现了相册分类和相册分组,还有相册图片管理,数据库采用mysql,实现了登录注册功能.PHP个人相册源码,相册管理系统,PHP相册管理系统,界面美观简单,适合用来当做课程设计或 ...
- java注册登录小程序,详解小程序之简单登录注册表单验证
这段时间在做员工管理的小程序,前期在登录注册上花了不少功夫,今天就给大家分享下. 效果图,wxss的内容较简单,自己编写即可. ##主要内容 一.首先我是在util.js中引入表单正则验证规则,给予l ...
- 小程序之简单登录注册表单验证
这段时间在做员工管理的小程序,前期在登录注册上花了不少功夫,今天就给大家分享下. 效果图,wxss的内容较简单,自己编写即可. ##主要内容 一.首先我是在util.js中引入表单正则验证规则,给予l ...
- Java小案例——方法实现简单登录注册
简单登录和注册 一.登录 1. 内容介绍 定义一个内置的账号和密码,写好账号输入.密码输入.随机验证码生成.验证码输入方法(3个输入方法没有使用重载)以及账号密码验证码比较方法.调用这些方法实现简单的 ...
- php简单论坛登录注册,php简单登录注册验证
列表页 //连接数据库 $db = new MySQLi('localhost','root','','z_1032'); !mysqli_connect_error() or die('连接失败') ...
- 【Unity+MySQL】实现简单的注册登录系统
目录 1 安装Unity引擎和Navicat软件 2 安装MySQL8.0数据库 2.1 下载msi文件 2.2 安装MySQL Server 8.0 2.3 配置环境变量 2.4 安装MySQL服务 ...
- mysql和php的登录注册界面_php实现注册和登录界面的方法
本篇文章主要介绍php实现注册和登录界面的方法,感兴趣的朋友参考下,希望对大家有所帮助. 当初我觉得一个网站上注册和登录这两个功能很神奇,后来自己研究一下发现其实道理很简单,接下来看一下怎么实现的吧. ...
最新文章
- 收集:搜罗或看到的搞笑桥段
- java:static关键字
- 华尔街英语软件_华尔街英语吧啦吧啦聊点啥:美式“人情世故”
- 【小练习05】HTML+CSS--淘宝商铺小页面
- Tomcat 详解 一
- Angularjs1.x 中的 constant, value
- arm linux 时间获取,菜鸟自学ARM:linux下编程获取系统时间和设置时间
- 【zookeeper】Zookeeper:ZooInspector界面工具
- python编程(import头文件)
- vue中使用this遇到的坑
- Eclipse插件安装之,使用(已经下载的zip)安装包直接安装插件(例:glassfish 插件 plugin)
- mac好用的图片转文字,ocr文字识别工具:Text Scanner
- 【机械仿真】基于matlab水下机器人机械手系统仿真【含Matlab源码 1264期】
- Hadoop完全分布安装详细过程--------****--------(ubuntu版本)
- 解答腾讯会议的常见新手问题
- 微信公众平台一直限制配置失败-106
- Codeforces - 1102F - Elongated Matrix(建图 + 哈密顿通路)
- Spark 学习笔记——001【spark-mysql+spark-hive】
- 2016团体程序设计天梯赛-决赛-部分题解
- hdwiki 附件上传大小设置