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 相关文章推荐
玩转虚拟域名◎+ .
Oct 09 PHP
php基础知识:类与对象(5) static
Dec 13 PHP
Ha0k 0.3 PHP 网页木马修改版
Oct 11 PHP
IP138 IP地址查询小偷实现代码
Feb 15 PHP
php获取通过http协议post提交过来xml数据及解析xml
Dec 16 PHP
PHP文件读取功能的应用实例
May 08 PHP
PHP实现的增强性mhash函数
May 27 PHP
php技术实现加载字体并保存成图片
Jul 27 PHP
php析构函数的简单使用说明
Aug 24 PHP
PHP Callable强制指定回调类型的方法
Aug 30 PHP
PHP生成各种随机验证码的方法总结【附demo源码】
Jun 05 PHP
phpcms配置列表页以及获得文章发布时间
Jul 04 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 checkbox复选框值的获取与checkbox默认值输出方法
2010/05/15 PHP
深入php处理整数函数的详解
2013/06/09 PHP
php连接Access数据库错误及解决方法
2013/06/20 PHP
基于jquery的高性能td和input切换并可修改内容实现代码
2011/01/09 Javascript
js中scrollHeight,scrollWidth,scrollLeft,scrolltop等差别介绍
2012/05/16 Javascript
jQuery动态地获取系统时间实现代码
2013/05/24 Javascript
document.documentElement和document.body区别介绍
2013/09/16 Javascript
jquery制作弹窗提示窗口代码分享
2014/03/02 Javascript
jQuery自动添加表单项的方法
2015/07/13 Javascript
NodeJS与HTML5相结合实现拖拽多个文件上传到服务器的实现方法
2016/07/26 NodeJs
使用jquery.qrcode.js生成二维码插件
2016/10/17 Javascript
微信小程序开发中的疑问解答汇总
2017/07/03 Javascript
基于Bootstrap模态对话框只加载一次 remote 数据的解决方法
2017/07/09 Javascript
Form表单上传文件(type=&quot;file&quot;)的使用
2017/08/03 Javascript
bootstrap Table服务端处理分页(后台是.net)
2017/10/19 Javascript
elementUI中Table表格问题的解决方法
2018/12/04 Javascript
Vue使用Three.js加载glTF模型的方法详解
2020/06/14 Javascript
python开发简易版在线音乐播放器
2017/03/03 Python
Tornado协程在python2.7如何返回值(实现方法)
2017/06/22 Python
Python获取指定文件夹下的文件名的方法
2018/02/06 Python
Python 获取windows桌面路径的5种方法小结
2019/07/15 Python
Django之使用内置函数和celery发邮件的方法示例
2019/09/16 Python
Python 图像对比度增强的几种方法(小结)
2019/09/25 Python
pycharm开发一个简单界面和通用mvc模板(操作方法图解)
2020/05/27 Python
Clarks其乐鞋荷兰官网:Clarks荷兰
2019/07/05 全球购物
俄语地区最大的中国商品在线购物网站之一:Umka Mall
2019/11/03 全球购物
全球精选男装和家居用品:Article
2020/04/13 全球购物
在网络中有两台主机A和B,并通过路由器和其他交换设备连接起来,已经确认物理连接正确无误,怎么来测试这两台机器是否连通?如果不通,怎么来判断故障点?怎么排
2014/01/13 面试题
职业教育毕业生求职信
2013/11/09 职场文书
转预备党员政审材料
2014/02/06 职场文书
销售区域经理岗位职责
2015/04/10 职场文书
幼儿园中班班级总结
2015/08/10 职场文书
《揠苗助长》教学反思
2016/02/20 职场文书
2019XX公司员工考核管理制度!
2019/08/07 职场文书
SQL写法--行行比较
2021/08/23 SQL Server
一次线上mongo慢查询问题排查处理记录
2022/03/18 MongoDB