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 引用是个坏习惯
Mar 12 PHP
非常精妙的PHP递归调用与静态变量使用
Dec 16 PHP
ubuntu12.04使用c编写php扩展模块教程分享
Dec 25 PHP
php实现的CSS更新类实例
Sep 22 PHP
PHP curl使用实例
Jul 02 PHP
php根据日期或时间戳获取星座信息和生肖等信息
Oct 20 PHP
在WordPress中获取数据库字段内容和添加主题设置菜单
Jan 11 PHP
Yii2框架使用计划任务的方法
May 25 PHP
PHP上传图片、删除图片简单实例
Nov 12 PHP
php版微信小店API二次开发及使用示例
Nov 12 PHP
在Laravel5中正确设置文件权限的方法
May 22 PHP
PHP实现的多进程控制demo示例
Jul 22 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
2019年中国咖啡业现状与发展趋势
2021/03/04 咖啡文化
Yii控制器中filter过滤器用法分析
2016/07/15 PHP
yii2中关于加密解密的那些事儿
2018/06/12 PHP
JavaScript 特殊字符
2007/04/05 Javascript
js parentElement和offsetParent之间的区别
2010/03/23 Javascript
JavaScript中的对象的extensible属性介绍
2014/12/30 Javascript
jQuery统计上传文件大小的方法
2015/01/24 Javascript
JavaScript获取当前日期是星期几的方法
2015/04/06 Javascript
iframe中使用jquery进行查找的方法【案例分析】
2016/06/17 Javascript
解析JavaScript模仿块级作用域
2016/12/29 Javascript
json的结构与遍历方法实例分析
2017/04/25 Javascript
Node.js 异步异常的处理与domain模块解析
2017/05/10 Javascript
微信小程序滚动Tab实现左右可滑动切换
2017/08/17 Javascript
arcgis for js栅格图层叠加(Raster Layer)问题
2017/11/22 Javascript
原生实现一个react-redux的代码示例
2018/06/08 Javascript
layui异步加载table表中某一列数据的例子
2019/09/16 Javascript
JavaScript实现模态对话框实例
2020/01/13 Javascript
python字典的常用操作方法小结
2016/05/16 Python
Python面向对象特殊成员
2017/04/24 Python
Python安装Numpy和matplotlib的方法(推荐)
2017/11/02 Python
python爬虫使用cookie登录详解
2017/12/27 Python
Python3爬虫全国地址信息
2019/01/05 Python
java中的控制结构(if,循环)详解
2019/06/26 Python
Python 如何实现访问者模式
2020/07/28 Python
Flask-SocketIO服务端安装及使用代码示例
2020/11/26 Python
教你如何一步一步用Canvas写一个贪吃蛇
2018/10/22 HTML / CSS
Canvas引入跨域的图片导致toDataURL()报错的问题的解决
2018/09/19 HTML / CSS
中国一家专注拼团的社交购物网站:拼多多
2018/06/13 全球购物
地理科学专业毕业生求职信
2013/10/15 职场文书
工程质量承诺书范文
2014/03/27 职场文书
厂区绿化方案
2014/05/08 职场文书
教师廉洁自律承诺书
2014/05/26 职场文书
授权收款委托书
2014/09/23 职场文书
2015年设计师个人工作总结
2015/04/25 职场文书
读《解忧杂货店》有感:请相信一切都是最好的安排
2019/11/07 职场文书
导游词之张家口
2019/12/13 职场文书