2010-09-05 20 views
0

我建立一個HTML表格一組複選框使用這種格式選擇多個類別:笨 - 表單驗證從數組轉換後的變量爲「陣列」串

 
<input type="checkbox" name="category[]" /> 

所以,當我發佈和print_r($_POST)一旦我運行$this->form_validation->run();類別陣列變爲「陣列」作爲字符串

 
Array 
(
    [27] => on 
    [28] => on 
    [29] => on 
) 

:以瀏覽和變量值I得到。我相信我已經縮小到system/libraries/Form_validation.php文件中的「prep_for_form」函數,但它看起來像遞歸函數正常工作。

預先感謝您。

+0

是否相同,當你做'的print_r($這個 - >輸入 - >後)'? – janosrusiczki 2010-09-06 13:42:01

回答

0

我想通了。在使用$this->form_validation->set_rules()方法時,在驗證規則(第三個參數)中,我將其設置爲trim|required。我想修剪功能像字符串「陣列」一樣處理實際的數組並修剪單詞。我只是從我的驗證規則中刪除了「修剪」規則。例如

 
$this->form_validation->set_rules('category', 'categories', 'trim|required'); 

// when parsing an array (set of checkboxes, radio buttons, etc.) 
// - remove the "trim" validation 
$this->form_validation->set_rules('category', 'categories', 'required'); 

我希望別人覺得這很有用。