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 相关文章推荐
怎样在UNIX系统下安装php3
Oct 09 PHP
用PHP函数解决SQL injection
Dec 09 PHP
php编程实现获取excel文档内容的代码实例
Jun 28 PHP
基于header的一些常用指令详解
Jun 06 PHP
关于Zend Studio 配色方案插件的介绍
Jun 24 PHP
php以post形式发送xml的方法
Nov 04 PHP
Web程序工作原理详解
Dec 25 PHP
php抽象类用法实例分析
Jul 07 PHP
php获取flash尺寸详细数据的方法
Nov 12 PHP
Laravel学习教程之路由模块
Aug 18 PHP
PHP性能测试工具xhprof安装与使用方法详解
Apr 29 PHP
PHP的curl函数的用法总结
Feb 14 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相关资料
2006/10/09 PHP
PHP MSSQL 存储过程的方法
2008/12/24 PHP
mysql alter table命令修改表结构实例详解
2016/09/24 PHP
window.open以post方式将内容提交到新窗口
2012/12/26 Javascript
js模拟滚动条(横向竖向)
2013/02/22 Javascript
String.prototype实现的一些javascript函数介绍
2013/11/22 Javascript
javascript 自定义回调函数示例代码
2014/09/26 Javascript
Bootstrap Table使用心得总结
2016/11/29 Javascript
jQuery正则验证注册页面经典实例
2017/06/10 jQuery
详解用node.js实现简单的反向代理
2017/06/26 Javascript
详谈javascript精度问题与调整
2017/07/08 Javascript
浅谈ES6新增的数组方法和对象
2017/08/08 Javascript
Vue2.0学习之详解Vue 组件及父子组件通信
2017/12/12 Javascript
Vuejs 2.0 子组件访问/调用父组件的方法(示例代码)
2018/02/08 Javascript
详解vue-router 初始化时做了什么
2018/06/11 Javascript
vue.js 添加 fastclick的支持方法
2018/08/28 Javascript
Node.js对MongoDB进行增删改查操作的实例代码
2019/04/18 Javascript
详解vue+axios给开发环境和生产环境配置不同的接口地址
2019/08/16 Javascript
简单了解Vue computed属性及watch区别
2020/07/10 Javascript
浅谈python socket函数中,send与sendall的区别与使用方法
2017/05/09 Python
python实现音乐下载器
2018/04/15 Python
Pytest mark使用实例及原理解析
2020/02/22 Python
python统计字符串中字母出现次数代码实例
2020/03/02 Python
Python导入模块包原理及相关注意事项
2020/03/25 Python
香港彩色隐形眼镜在线商店:Stunninglens(全球免费送货)
2019/05/10 全球购物
会计系毕业个人自荐信格式
2013/09/23 职场文书
应征英语教师求职信
2013/11/27 职场文书
医院护士的求职信范文
2013/12/26 职场文书
文明青少年标兵事迹材料
2014/01/28 职场文书
预备党员入党自我评价范文
2014/03/10 职场文书
纪念9.18事变演讲稿
2014/09/14 职场文书
2015年见习期工作总结
2014/12/12 职场文书
董存瑞观后感
2015/06/11 职场文书
忠诚教育学习心得体会
2016/01/23 职场文书
springboot @ConfigurationProperties和@PropertySource的区别
2021/06/11 Java/Android
sql注入报错之注入原理实例解析
2022/06/10 MySQL