之前的表單驗證都是用js寫的,這裡也可以使用tp框架的驗證。但是兩者比較而言還是js驗證比較好,因為tp框架驗證會執行後台**,這樣執行速度和效率就會下降。
自動驗證是thinkphp模型層提供的一種資料驗證方法,可以在使用create建立資料物件的時候自動進行資料驗證。驗證的**要寫在模型層即model裡面。
資料驗證有兩種方式:
靜態方式:在模型類裡面通過$_validate屬性定義驗證規則。靜態方式定義好以後其它地方都可以使用。
動態方式:使用模型類的validate方法動態建立自動驗證規則。動態方式比較靈活,**使用就寫,其它地方不可以使用。
無論是什麼方式,驗證規則的定義是統一的規則,定義格式為:
<?php
namespace home\controller;
use think\controller;
class testcontroller extends controller
else
else}}
}
<?php
namespace home\model;
use think\model;
class yonghuumodel extends model
[1-9]\d((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d([0-9]|x)$/','身份證號不正確!',0,'regex'),
array('age','18,50','年齡不在範圍內',0,'between'),);}
二、動態驗證
<?phpnamespace home\controller;
use think\controller;
class testcontroller extends controller
else//如果post陣列不為空
else}}
}
<?phpnamespace home\model;
use think\model;
class yonghumodel extends model
三、ajax做驗證
tp動態驗證和靜態驗證都有乙個很大的缺點,那就是在提示錯誤資訊的時候都要跳轉到其它頁面顯示出錯誤資訊。如果需要在當前頁面顯示出錯誤資訊,就需要用ajax做驗證。
1.寫顯示和ajax處理方法
<?phpnamespace home\controller;
use think\controller;
class testcontroller extends controller
public function test()//ajax處理方法
else}}
2.寫顯示頁面
使用者名稱:
tp框架表單驗證 及ajax
之前的表單驗證都是用js寫的,這裡也可以使用tp框架的驗證。但是兩者比較而言還是js驗證比較好,因為tp框架驗證會執行後台 這樣執行速度和效率就會下降。自動驗證是thinkphp模型層提供的一種資料驗證方法,可以在使用create建立資料物件的時候自動進行資料驗證。驗證的 要寫在模型層即model裡...
動態表單驗證和TP框架裡面的ajax
動態驗證的操作方法 function yz else else 在框架裡用ajax來實現輸入代號顯示姓名 打到模板是用上面的 function ming 表單 代號 js document ready function e type post datatype text success functi...
TP框架驗證類
具體實現 驗證規則和提示資訊分開定義 rule name require max 25 age number between 1,120 email email msg name.require 名稱必須 name.max 名稱最多不能超過25個字元 age.number 年齡必須是數字 age.b...