標籤:php架構 color 欄位 mit javascrip class ida pos size
動態驗證:(不需要建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‘),//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"); } }}
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自動驗證登入註冊