Thinkphp框架 表单自动验证登录注册 ajax自动验证登录注册


Posted in PHP onDecember 27, 2016

动态验证:(不需要建Model模型)

1.建一个控制器,做表单操作(包含验证)

<?php
namespace Biaodan\Controller;
use Think\Controller;
class BiaodanController extends Controller
{
  public function test()
  {
    if(empty($_POST))//如果$_POST空,显示添加页面,
    {
      $this->show();  
    }
    else  //如果$_POST不为空,走验证,验证是否成功,添加数据库  
    {
      $y = D("yonghu");
      $arr = array(//造一个验证规则
        array(‘uid‘,‘require‘,‘用户名不能为空!‘,0),
        array(‘pwd‘,‘pwd1‘,‘输入的密码不一致‘,0,‘confirm‘),//相等验证:confirm(验证表单中的两个字段是否相同,定义的验证规则是一个字段名),意思是pwd1必须为字段
        array(‘email‘,‘email‘,‘邮箱格式不正确‘,0),
        array(‘name‘,‘/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/‘,‘身份证号不正确‘,0,‘regex‘),//正则表达式,
        array(‘age‘,‘18,50‘,‘年龄不在范围内‘,0,‘between‘)//范围验证
      );
      if($y->validate($arr)->create())//$y->validate($arr),添加之前执行验证规则
      {
        $y->add();  
      }
      else
      {
        die($y->getError());  
      }
    }
  }  
}

2.对应控制器方法的html页面:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
</head>
<body>
<form action="__ACTION__" method="post">
<br />
<br />
<br />
<br />
  <div>用户名:<input type="text" name="uid" /></div>
<br />
  <div>密码:<input type="text" name="pwd" /></div>
<br />
  <div>确认密码:<input type="text" name="pwd1" /></div>
<br />
  <div>姓名:<input type="text" name="name" /></div>
<br />
  <div>邮箱:<input type="text" name="email" /></div>
<br />
  <div>年龄:<input type="text" name="age" /></div>
<br />
  <div><input type="submit" value="添加" /></div>
</form>
</body>
</html>

ajax:(不需要建Model模型)

1.建一个控制器,做表单操作(包含验证)

<?php
namespace Admin\Controller;
use Think\Controller;
class ZhuCeController extends Controller {
  public function add(){
    $this->show();
  }
  public function addchuli(){
    $y = D("yonghubiao");
    $arr = array(
    array(‘uid‘,‘require‘,‘用户名不能为空!!‘),//ps: require 意思是字段必须,就是不能为空
    array(‘pwd‘,‘require‘,‘两次密码不一致!‘),
    array(‘name‘,‘require‘,‘没有填写名称!!‘),
    array(‘email‘,‘email‘,‘邮箱格式不正确!!‘),
    array(‘age‘,‘/^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/‘,‘身份证不合法‘,0,‘regex‘),
    );
    if($y->validate($arr)->create()){
      $y->add();
      $this->ajaxReturn("注册成功","eval");
    }else{
      $this->ajaxReturn($y->getError(),"eval");
    }
  }
}

2.对应控制器方法的html页面:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<script src="__PUBLIC__/js/jquery-1.11.2.min.js"></script>
<title>用户注册</title>
</head>
<body>
<br />
<br />
<br />
  <div>用户名:<input type="text" id="uid" /></div>
<br />  
  <div> 密码:<input type="text" id="pwd" /></div>
<br />
  <div> 名称:<input type="text" id="name" /></div>
<br />
  <div> 邮箱:<input type="text" id="email" /></div>
<br />
  <div>身份证号:<input type="text" id="age" /></div>
<br />
  <div><input type="button" id="dtn" value="提交" /></div>
</body>
<script type="text/javascript">
  $("#dtn").click(function(){
    var uid = $("#uid").val();
    var pwd = $("#pwd").val();
    var name = $("#name").val();
    var email = $("#email").val();
    var age = $("#age").val();
    $.ajax({
        url:"__CONTROLLER__/addchuli",
        data:{uid:uid,pwd:pwd,name:name,email:email,age:age},
        dataType:"TEXT",
        type:"POST",
        success: function(data){
          alert(data);
        }
    });
  });
</script>
</html>

以上所述是小编给大家介绍的Thinkphp框架 表单自动验证登录注册 ajax自动验证登录注册,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对三水点靠木网站的支持!

PHP 相关文章推荐
PHP XML备份Mysql数据库
May 27 PHP
PHP获取163、gmail、126等邮箱联系人地址【已测试2009.10.10】
Oct 11 PHP
php与XML、XSLT、Mysql的结合运用实现代码
Nov 19 PHP
php checkbox复选框值的获取与checkbox默认值输出方法
May 15 PHP
PHP正则表达式 /i, /is, /s, /isU等介绍
Oct 23 PHP
PHP中类的继承和用法实例分析
May 24 PHP
php实现登录tplink WR882N获取IP和重启的方法
Jul 20 PHP
php通过执行CutyCapt命令实现网页截图的方法
Sep 30 PHP
PHP读取zip文件的方法示例
Nov 17 PHP
浅谈PHP的$_SERVER[SERVER_NAME]
Feb 04 PHP
YII2自动登录Cookie总是失效的解决方法
Jun 28 PHP
php变量与字符串的增删改查操作示例
May 07 PHP
PHP面向对象程序设计类的定义与用法简单示例
Dec 27 #PHP
PHP面向对象程序设计OOP继承用法入门示例
Dec 27 #PHP
记录一次排查PHP脚本执行卡住的问题
Dec 27 #PHP
PHP串行化与反串行化实例分析
Dec 27 #PHP
PHP 表单提交及处理表单数据详解及实例
Dec 27 #PHP
iOS+PHP注册登录系统 PHP部分(上)
Dec 26 #PHP
PHP实现表单提交时去除斜杠的方法
Dec 26 #PHP
You might like
php实现用户在线时间统计详解
2011/10/08 PHP
php文件上传你必须知道的几点
2015/10/20 PHP
分享PHP源码批量抓取远程网页图片并保存到本地的实现方法
2015/12/01 PHP
thinkPHP删除前弹出确认框的简单实现方法
2016/05/16 PHP
PHP版单点登陆实现方案的实例
2016/11/17 PHP
javascript Split方法,indexOf方法、lastIndexOf 方法和substring 方法
2009/03/21 Javascript
JavaScript中的细节分析
2012/06/30 Javascript
jquery实现动态操作select选中
2015/02/11 Javascript
JavaScript中Number.MIN_VALUE属性的使用示例
2015/06/04 Javascript
HTML5+Canvas调用手机拍照功能实现图片上传(下)
2017/04/21 Javascript
使用JQuery实现图片轮播效果的实例(推荐)
2017/10/24 jQuery
JavaScript实现二叉树的先序、中序及后序遍历方法详解
2017/10/26 Javascript
js实现控制文件拖拽并获取拖拽内容功能
2018/02/17 Javascript
javascript数组常见操作方法实例总结【连接、添加、删除、去重、排序等】
2019/06/13 Javascript
微信小程序组件传值图示过程详解
2019/07/31 Javascript
layui点击数据表格添加或删除一行的例子
2019/09/12 Javascript
你可能从未使用过的11+个JavaScript特性(小结)
2020/01/08 Javascript
JavaScript实现简单的弹窗效果
2020/05/19 Javascript
Node.js web 应用如何封装到Docker容器中
2020/09/01 Javascript
python正则分析nginx的访问日志
2017/01/17 Python
Python进程间通信Queue实例解析
2018/01/25 Python
python处理multipart/form-data的请求方法
2018/12/26 Python
Python OpenCV实现视频分帧
2019/06/01 Python
python实现代码统计器
2019/09/19 Python
Python pandas自定义函数的使用方法示例
2019/11/20 Python
Python第三方库的几种安装方式(小结)
2020/04/03 Python
Python3.7下安装pyqt5的方法步骤(图文)
2020/05/12 Python
如何基于Python pygame实现动画跑马灯
2020/11/18 Python
Antler英国官网:购买安特丽行李箱、拉杆箱
2019/08/25 全球购物
俄罗斯在线手表和珠宝商店:AllTime
2019/09/28 全球购物
说出一些常用的类,包,接口
2014/09/22 面试题
物流管理系毕业生求职信
2014/06/03 职场文书
2014审计局领导班子民主生活会对照检查材料思想汇报
2014/09/20 职场文书
2014年法院工作总结
2014/11/24 职场文书
react中的DOM操作实现
2021/06/30 Javascript
Python selenium绕过webdriver监测执行javascript
2022/04/12 Python