您還可以
在線咨詢添加客服咨詢?cè)斍?/p>
您還可以
在線咨詢
咨詢熱線:15918671994
多用戶
商城系統(tǒng)
訂單
管理系統(tǒng)
訂貨
管理系統(tǒng)
多語(yǔ)言
商城系統(tǒng)
| 平臺(tái)演示 | 演示地址 | 賬號(hào)密碼 |
|---|---|---|
| PC前端 | http://test.wstmart.net/ |
掃碼咨詢客服 |
| 平臺(tái)后臺(tái) | http://test.wstmart.net/admin | |
| 商家后臺(tái) | http://test.wstmart.net/shop | |
| 供應(yīng)商后臺(tái) | http://test.wstmart.net/supplier/ | |
| 多語(yǔ)言多商戶 | http://dyy.wstmart.net/ |
安卓APP(用瀏覽器打開)
蘋果APP
小程序商城
微信商城
為企業(yè)打造類似”京東、天貓“的電商平臺(tái),源碼交付支持二開
| B2B2C電商系統(tǒng) |
|---|
2017-11-16 19:53:21 瀏覽量:13660
使用驗(yàn)證功能

一個(gè)獨(dú)立的系統(tǒng),僅僅只在前臺(tái)進(jìn)行表單驗(yàn)證是遠(yuǎn)遠(yuǎn)不夠的,在處理 PHP 表單時(shí)提交時(shí)需重視安全性,我們需對(duì) HTML 表單數(shù)據(jù)進(jìn)行適當(dāng)?shù)尿?yàn)證對(duì)于防范黑客很重要。
使用ThinkPHP 5框架做項(xiàng)目時(shí),如何使用框架自帶的驗(yàn)證機(jī)制和框架內(nèi)自定義驗(yàn)證規(guī)則 來(lái)比較好地做好項(xiàng)目,下面我們以實(shí)際項(xiàng)目講解:(以下代碼截取自商淘軟件tp5開源商城系統(tǒng)WSTMart,大家可自行下載)。
使用TP5框架驗(yàn)證
(1)在需要使用驗(yàn)證的模塊下創(chuàng)建validate目錄,在目錄下創(chuàng)建驗(yàn)證文件。
(2)驗(yàn)證規(guī)則的定義

驗(yàn)證多個(gè)規(guī)則:

(3)驗(yàn)證規(guī)則(部分)
TP5框架內(nèi)置了常用的驗(yàn)證規(guī)則:
require:驗(yàn)證某個(gè)字段必須
例如:['goodsName','require','請(qǐng)輸入商品名稱']
number(integer):驗(yàn)證某個(gè)字段的值是否為數(shù)字
例如:['goodsSn','number','商品貨號(hào)只能為數(shù)字']
float:驗(yàn)證某個(gè)字段的值是否為浮點(diǎn)數(shù)據(jù)
例如:['goodsPrice','float','商品價(jià)格只能為浮點(diǎn)數(shù)']
in:驗(yàn)證某個(gè)字段的值是否在某個(gè)范圍
例如:['goodsType' ,'in:,0,1','無(wú)效的商品類型'],
notIn:驗(yàn)證某個(gè)字段的值是否不在某個(gè)范圍
例如:['goodsType' ,'notIn:,0,1','無(wú)效的商品類型'],
max:number 驗(yàn)證某個(gè)字段的值的最大長(zhǎng)度
例如:['goodsName' ,'max:300','商品名稱不能超過(guò)100個(gè)字符']
*以上只是部分內(nèi)置規(guī)則,完整的內(nèi)置規(guī)則請(qǐng)參考TP5官方文檔
自定義驗(yàn)證規(guī)則:系統(tǒng)內(nèi)置了一些規(guī)則,偶爾會(huì)出現(xiàn)不夠用,因此可以自己擴(kuò)展驗(yàn)證規(guī)則,可以直接在驗(yàn)證器類添加自己的驗(yàn)證方法(需要注意的是,自定義的驗(yàn)證規(guī)則方法名不能和已有的規(guī)則沖突)
(4)在model文件中,需要使用的地方調(diào)用validate(true)方法
(5) 若驗(yàn)證不通過(guò),save()會(huì)返回false,驗(yàn)證不通過(guò)的原因可以通過(guò)$this->getError()來(lái)獲取
以上是tp5的系統(tǒng)驗(yàn)證規(guī)則及自定義驗(yàn)證方法規(guī)則,大家有比較好的方法也希望多留言交流!

獲取體驗(yàn)賬號(hào) 最新優(yōu)惠及電商資訊