我正在使用CodeIgniter編寫我的表單驗證類。有沒有辦法讓我可以在名稱值對中得到錯誤信息?例如,在示例表單中有四個字段:user_name
,password
,password_conf
和timezone
。其中user_name
和password
驗證已執行失敗後執行以下操作:CodeIgniter表單驗證 - 獲取結果作爲「數組」而不是「字符串」
$result = $this->form_validation->run();
如果上面的函數返回假的,我想在名稱值對錯誤類似如下:
Array
{
'user_name' => 'user name is required',
'password' => 'passord is required'
}
我真的想要形成一個JSON,我可以傳回AJAX調用。我有一個(髒)解決方案:我可以打電話驗證方法,一個個像如下:
$this->form_validation->required($user_name);
$this->form_validation->required($password);
是否有任何其他的方式,讓所有的錯誤信息一次在名稱值對?
編輯:我建議從其中一個答案做驗證使用jQuery:
jQuery將在客戶端驗證幫助,但對於服務器端,我使用笨驗證。
我設計它,以便:
- 我發佈使用AJAX的所有值。
- 在服務器端(PHP)進行驗證。
- 如果輸入有效,請執行所需的操作;否則將錯誤返回給用戶。
客戶端驗證不應該是您唯一關心的問題,後端驗證更重要。 – 2009-01-22 14:24:46
對,這將是愚蠢的。我沒有建議不做服務器端驗證 - 再次閱讀我的編輯和原始文章。 – roborourke 2009-01-23 11:10:13
此外,有時驗證需要後端完成,例如驗證某個數據庫表(表中的唯一性) – MaxiWheat 2012-12-12 20:20:14