PHP实现的用户注册表单验证功能简单示例


Posted in PHP onFebruary 25, 2019

本文实例讲述了PHP实现的用户注册表单验证功能。分享给大家供大家参考,具体如下:

注册界面

PHP实现的用户注册表单验证功能简单示例

register.html

<h1>用户注册</h1>
  <form method="post" action="register_verify.php">
    <input type="text" placeholder="用户名" name="username"><br><br>
    <input type="password" placeholder="密码" name="password"><br><br>
    <input type="password" placeholder="重复密码" name="password2"><br><br>
    <label>性别:
      <input type="radio" name="sex" value="男" checked="checked">男
      <input type="radio" name="sex" value="女">女</label><br><br>
    <input type="email" placeholder="邮箱" name="email"><br><br>
    <button class="btn" type="submit">注册</button>
  </form>

register_verify.php

<?php
require "mysql.php";      //导入mysql.php访问数据库
$username=$_POST['username'];
$password=$_POST['password'];
$password2=$_POST['password2'];
$sex=$_POST['sex'];
$email=$_POST['email'];
if(checkEmpty($username,$password,$password2,$sex,$email)){
  if(checkpwd($password,$password2)){
    if(checkEmail($email)){
      if(insert($username,$password,$sex,$email))
        echo"注册成功";
    }
  }
}
//方法:判断是否为空
function checkEmpty($username,$password,$password2,$sex,$email){
  if($username==null||$password==null||$password2==null){
    echo '<html><head><Script Language="JavaScript">alert("用户名或密码为空");</Script></head></html>'       . "<meta http-equiv=\"refresh\" content=\"0;url=register.html\">";
  }
  else{
    if($sex==null){
      echo '<html><head><Script Language="JavaScript">alert("性别为空");</Script></head></html>' .          "<meta http-equiv=\"refresh\" content=\"0;url=register.html\">";
    }
    elseif($email==null){
      echo '<html><head><Script Language="JavaScript">alert("邮箱为空");</Script></head></html>' .          "<meta http-equiv=\"refresh\" content=\"0;url=register.html\">";
    }
    else{
      return true;
    }
  }
}
//方法:检查两次密码是否相同
function checkpwd($password,$password2){
  if($password==$password2)
    return true;
  else
    echo '<html><head><Script Language="JavaScript">alert("两次密码不一致");</Script></head></html>' .        "<meta http-equiv=\"refresh\" content=\"0;url=register.html\">";
}
//方法:邮箱格式验证
function checkEmail($email){
  $preg = '/^(\w{1,25})@(\w{1,16})(\.(\w{1,4})){1,3}$/';
  if(preg_match($preg, $email)){
    return true;
  }else{
    echo '<html><head><Script Language="JavaScript">alert("邮箱格式有误");</Script></head></html>' .        "<meta http-equiv=\"refresh\" content=\"0;url=register.html\">";
  }
}
//方法:将数据插入数据库中
function insert($username,$password,$sex,$email){
  $conn=new Mysql();
  $sql="insert into user VALUE (null,'$username','$password','$sex','$email')";
  $result=$conn->sql($sql);
  if($result){
    return true;
  }
  else{
    echo '<html><head><Script Language="JavaScript">alert("写入数据库失败");</Script></head></html>' .        "<meta http-equiv=\"refresh\" content=\"0;url=register.html\">";
  }
  $conn->close();
}

验证码和数据库的实现方法前面写过,这里不再赘述。

可参考前面两篇文章:

PHP 相关文章推荐
PHP教程 变量定义
Oct 23 PHP
php生成的html meta和link标记在body标签里 顶部有个空行
May 18 PHP
PHP定时自动生成静态HTML的实现代码
Jun 20 PHP
php 冒泡排序 交换排序法
May 10 PHP
php多个字符串替换成同一个的解决方法
Jun 18 PHP
php实现获取及设置用户访问页面语言类
Sep 24 PHP
PHP采集静态页面并把页面css,img,js保存的方法
Dec 23 PHP
PHP Ajax实现无刷新附件上传
Aug 17 PHP
PHP针对多用户实现更换头像功能
Sep 04 PHP
PHP仿qq空间或朋友圈发布动态、评论动态、回复评论、删除动态或评论的功能(上)
May 26 PHP
Smarty模板语法详解
Jul 20 PHP
PHP7.3.10编译安装教程
Oct 08 PHP
PHP封装mysqli基于面向对象的mysql数据库操作类与用法示例
Feb 25 #PHP
Laravel核心解读之异常处理的实践过程
Feb 24 #PHP
PHP通过GD库实现验证码功能示例
Feb 23 #PHP
php中file_get_contents()函数用法实例
Feb 21 #PHP
PHP基于mcript扩展实现对称加密功能示例
Feb 21 #PHP
PHP+jQuery实现双击修改table表格功能示例
Feb 21 #PHP
PHP+jQuery实现即点即改功能示例
Feb 21 #PHP
You might like
PHP程序漏洞产生的原因分析与防范方法说明
2014/03/06 PHP
PHP把空格、换行符、中文逗号等替换成英文逗号的正则表达式
2014/05/04 PHP
PHP加密技术的简单实现
2016/09/04 PHP
php + nginx项目中的权限详解
2017/05/23 PHP
php使用环形链表解决约瑟夫问题完整示例
2018/08/07 PHP
Laravel 解决419错误 -ajax请求错误的问题(CSRF验证)
2019/10/25 PHP
Yii 框架使用Forms操作详解
2020/05/18 PHP
jqPlot jquery的页面图表绘制工具
2009/07/25 Javascript
javascript自适应宽度的瀑布流实现思路
2013/02/20 Javascript
JS模块与命名空间的介绍
2013/03/22 Javascript
$.getJSON在IE下失效的原因分析及解决方法
2013/06/16 Javascript
JS+CSS实现一个气泡提示框
2013/08/18 Javascript
JavaScript实现url地址自动检测并添加URL链接示例代码
2013/11/12 Javascript
javascript生成随机大小写字母的方法
2014/02/20 Javascript
Js Jquery创建一个弹出层可加载一个页面
2014/05/08 Javascript
node.js中的fs.rmdir方法使用说明
2014/12/16 Javascript
浅析Visual Studio Code断点调试Vue
2018/02/27 Javascript
vue2.0 watch里面的 deep和immediate用法说明
2020/10/30 Javascript
[01:21:07]EG vs Liquid 2018国际邀请赛淘汰赛BO3 第一场 8.25
2018/08/29 DOTA
python高并发异步服务器核心库forkcore使用方法
2013/11/26 Python
Python httplib模块使用实例
2015/04/11 Python
Python优化技巧之利用ctypes提高执行速度
2016/09/11 Python
python中logging包的使用总结
2018/02/28 Python
Windows上使用Python增加或删除权限的方法
2018/04/24 Python
Python3爬虫学习之将爬取的信息保存到本地的方法详解
2018/12/12 Python
关于 Python opencv 使用中的 ValueError: too many values to unpack
2019/06/28 Python
python openCV获取人脸部分并存储功能
2019/08/28 Python
python实现名片管理器的示例代码
2019/12/17 Python
python GUI库图形界面开发之PyQt5中QMainWindow, QWidget以及QDialog的区别和选择
2020/02/26 Python
英国No.1文具和办公用品在线:Euroffice
2016/09/21 全球购物
药学专业毕业生求职信
2013/10/20 职场文书
超市5.1促销活动
2014/01/15 职场文书
优秀团队获奖感言
2014/02/19 职场文书
投资意向协议书
2015/01/29 职场文书
Tomcat starup.bat 脚本实现开机自启动
2022/04/20 Servers
python热力图实现的完整实例
2022/06/25 Python