Thinkphp框架 表單自動(dòng)驗(yàn)證登錄注冊(cè) ajax自動(dòng)驗(yàn)證登錄注冊(cè)
動(dòng)態(tài)驗(yàn)證:(不需要建Model模型)
1.建一個(gè)控制器,做表單操作(包含驗(yàn)證)
<?php namespace Biaodan\Controller; use Think\Controller; class BiaodanController extends Controller { public function test() { if(empty($_POST))//如果$_POST空,顯示添加頁(yè)面, { $this->show(); } else //如果$_POST不為空,走驗(yàn)證,驗(yàn)證是否成功,添加數(shù)據(jù)庫(kù) { $y = D("yonghu"); $arr = array(//造一個(gè)驗(yàn)證規(guī)則 array(‘uid‘,‘require‘,‘用戶名不能為空!‘,0), array(‘pwd‘,‘pwd1‘,‘輸入的密碼不一致‘,0,‘confirm‘),//相等驗(yàn)證:confirm(驗(yàn)證表單中的兩個(gè)字段是否相同,定義的驗(yàn)證規(guī)則是一個(gè)字段名),意思是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)$/‘,‘身份證號(hào)不正確‘,0,‘regex‘),//正則表達(dá)式, array(‘a(chǎn)ge‘,‘18,50‘,‘年齡不在范圍內(nèi)‘,0,‘between‘)//范圍驗(yàn)證 ); if($y->validate($arr)->create())//$y->validate($arr),添加之前執(zhí)行驗(yàn)證規(guī)則 { $y->add(); } else { die($y->getError()); } } } }
2.對(duì)應(yīng)控制器方法的html頁(yè)面:
<!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>無(wú)標(biāo)題文檔</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>確認(rèn)密碼:<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.建一個(gè)控制器,做表單操作(包含驗(yàn)證)
<?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‘,‘沒(méi)有填寫名稱?。 ?, array(‘email‘,‘email‘,‘郵箱格式不正確?。 ?, array(‘a(chǎn)ge‘,‘/^[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("注冊(cè)成功","eval"); }else{ $this->ajaxReturn($y->getError(),"eval"); } } }
2.對(duì)應(yīng)控制器方法的html頁(yè)面:
<!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>用戶注冊(cè)</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>身份證號(hào):<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框架 表單自動(dòng)驗(yàn)證登錄注冊(cè) ajax自動(dòng)驗(yàn)證登錄注冊(cè),希望對(duì)大家有所幫助,如果大家有任何疑問(wèn)請(qǐng)給我留言,小編會(huì)及時(shí)回復(fù)大家的。在此也非常感謝大家對(duì)腳本之家網(wǎng)站的支持!
相關(guān)文章
Laravel獲取當(dāng)前請(qǐng)求的控制器和方法以及中間件的例子
今天小編就為大家分享一篇Laravel獲取當(dāng)前請(qǐng)求的控制器和方法以及中間件的例子,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2019-10-10php代碼把全角數(shù)字轉(zhuǎn)為半角數(shù)字
這篇文章介紹了php代碼把全角數(shù)字轉(zhuǎn)為半角數(shù)字的方法,涉及php針對(duì)數(shù)組的遍歷、計(jì)算、輸出等簡(jiǎn)單操作技巧,需要的朋友可以參考一下2007-12-12Google Voice 短信發(fā)送接口PHP開(kāi)源版(2010.5更新)
Google Voice 短信發(fā)送接口PHP開(kāi)源版,以前的版本不能用了,作者于2010年5月進(jìn)行了更新。2010-07-07app判斷鏈接參數(shù)后綴跳轉(zhuǎn)不同地址的方法
下面小編就為大家?guī)?lái)一篇app判斷鏈接參數(shù)后綴跳轉(zhuǎn)不同地址的方法。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09thinkPHP基于反射實(shí)現(xiàn)鉤子的方法分析
這篇文章主要介紹了thinkPHP基于反射實(shí)現(xiàn)鉤子的方法,結(jié)合實(shí)例形式分析了php基于系統(tǒng)自帶的ReflectionClass、ReflectionMethod 類與函數(shù)實(shí)現(xiàn)鉤子功能的相關(guān)操作技巧,需要的朋友可以參考下2017-11-11