mysql表進行合法性檢查 表單合法性檢測

2021-10-18 16:02:04 字數 1238 閱讀 8865

# 表單合法性檢測

在處理表單提交的資料的時候,建議盡量採用think\model類提供的create方法首先進行資料建立,然後再寫入資料庫。

> create方法在建立資料的同時,可以進行更為安全的處理操作,而且這一切讓你的表單處理變得更簡單。

使用create方法建立資料物件的時候,可以使用資料的合法性檢測,支援兩種方式:

### 一、可以配置insertfields 和 updatefields屬性

可以分別為新增和編輯表單設定`insertfields`和 `updatefields`屬性,使用create方法建立資料物件的時候,不在定義範圍內的屬性將直接丟棄,避免表單提交非法資料。

insertfields 和 updatefields屬性的設定採用字串(逗號分割多個字段)或者陣列的方式。

設定的字段應該是實際的資料表字段,而不受字段對映的影響。例如:

namespace home\model;

class usermodel extends \think\model{

protected $insertfields = array('account','password','nickname','email');

protected $updatefields = array('nickname','email');

定義後,呼叫add方法寫入使用者資料的時候,只能寫入`'account','password','nickname','email'`這幾個字段,編輯的時候只能更新`'nickname','email'`兩個字段。

在使用的時候,我們呼叫create方法的時候,會根據提交型別自動識別insertfields和updatefields屬性:

d('user')->create();

### 二、直接呼叫field方法

如果不想定義insertfields和updatefields屬性,可以在呼叫create方法之前直接呼叫field方法,例如,實現和上面的例子同樣的作用:在新增使用者資料的時候,使用:

m('user')->field('account,password,nickname,email')->create();

而在更新使用者資料的時候,使用:

m('user')->field('nickname,email')->create();

這裡的字段也是實際的資料表字段。

> field方法也可以使用陣列方式。

使用字段合法性檢測後,你不再需要擔心使用者在提交表單的時候注入非法字段資料了。

檢查郵箱合法性

1 標準的c和c 都不支援正規表示式,但有一些函式庫可以輔助c c 程式設計師完成這一功能,其中最著名的當數philip hazel的perl compatible regular expression庫,許多linux發行版本都帶有這個函式庫。2 c c 中使用正規表示式一般分為三步 1 編譯正規...

檢查 URL 合法性

方法一 自己總結,親測可用 public static boolean checkurl string url 0 9 1 9 0 9 1 9 25 0 5 2 0 4 0 9 0 1 0 9 1 9 0 9 1 9 0 25 0 5 2 0 4 0 9 0 1 0 9 1 9 0 9 1 9 0 ...

JAVA日期合法性檢查

日期檢查 param pinput 要檢查的字串 return boolean 檢查結果 public static boolean isdate string pinput string regex d 02468 048 13579 26 0?1357 8 1 02 0?1 9 1 2 0 9 ...