首页 > 开发 > PHP > 正文

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

2024-05-04 22:49:58
字体:
来源:转载
供稿:网友

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

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

<?phpnamespace 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.建一个控制器,做表单操作(包含验证)

<?phpnamespace 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");    }  }}            
发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表