我通過使用自定義回調作爲規則的表單驗證來運行用戶輸入數組。每個提交的數據值都需要傳遞此自定義回調。如果他們沒有通過,我想設置一個唯一的錯誤消息,無論哪個值是無效的。在Codeigniter中使用回調驗證數組
然而,似乎我只能給每個規則分配一個錯誤消息。將錯誤分配給通過失敗的回調運行的任何值的最佳方法是什麼,以便每個值都能保持自己的錯誤?
我通過使用自定義回調作爲規則的表單驗證來運行用戶輸入數組。每個提交的數據值都需要傳遞此自定義回調。如果他們沒有通過,我想設置一個唯一的錯誤消息,無論哪個值是無效的。在Codeigniter中使用回調驗證數組
然而,似乎我只能給每個規則分配一個錯誤消息。將錯誤分配給通過失敗的回調運行的任何值的最佳方法是什麼,以便每個值都能保持自己的錯誤?
CodeIgniter的表單驗證允許每條規則發送一條消息。
你可以做的是在回調方法內設置該驗證規則的自定義錯誤消息,然後它返回FALSE。例如:
function _callback($str){
.... // do validation checks
$this->form_validation->set_message('_callback', 'Your input ' . $str . 'is not valid');
}
這樣,您仍然可以靈活地顯示輸入字符串有錯誤,而不是一條通用消息。
我對CI及其表單驗證庫的理解是驗證是在「每場」基礎上完成的。這可能是有趣的http://codeigniter.com/wiki/Assosiative_Arrays_via_POST/,但沒有正確閱讀它 – Ross 2010-12-07 20:29:12
請提供您的代碼,以便我們可以得到一個更好的主意。 – NexusRex 2010-12-08 11:22:51