6

私は現在、(Codeigniterの)Form Validationクラスを使用しており、ルールを設定しています。

これは、2つのパラメーター(codeigniter.com/user_guide/libraries/form_validation.html)で次のように機能します。

$this->form_validation->set_rules('username', 'Username', 'callback_test[abc]');

しかし、3番目のパラメーターはどうですか?そして4番目...?出来ますか?

4

5 に答える 5

15

公式ではありませんが動作します

パラメータを「、」で分割します

$this->form_validation->set_rules('article_big_image','Gambar Besar','callback_check_picture[article_big_image,edit]');

function check_picture($image,$param){
    $param = preg_split('/,/', $param);
    $field = $param[0];
    $action = $param[1];
    echo $field.$action;
}
于 2012-05-23T15:46:55.903 に答える
0

システムフォーム検証クラスを拡張せずにはいられません。これを実現する方法については、この記事を参照してください。

または、次を使用してコールバック関数内のpost変数にアクセスできます。

$this->input->post('field_name');

それはあなたを助けるかもしれないし、助けないかもしれません。

于 2012-01-05T10:46:41.137 に答える
0

以下のように、より多くのフィールドのより多くのパラメーターに配列を使用できます。

 $error = array(

                array(
                'field' => 'check', // the field name will come here
                'label' => 'Check',
                'rules' => 'required|here you can put the callback Function'
                )
          );
于 2015-01-15T11:34:13.320 に答える
-1

    $this->form_validation->set_rules('article_big_image','Gambar','callback_check_picture[article_big_image,edit]');
    function check_picture($image,$param){
        $param = explode(',', $param);
        $field = isset($param[0])?$param[0]:'';
        $action = isset($param[1])?$param[1]:'';
       echo $field.$action;
   }
于 2015-12-31T07:01:09.097 に答える
-2

ルールに渡すことができます |callback_handle_is_unique_value_combinations[val1,val2]

よりも、 public function callback_handle_is_unique_value_combinations($str, $field) { $fields = explode(',', $field); $val1 = $fields[0]; $val2 = $fields[1];

それからあなたはあなたのcponarisonsを作りました

于 2016-05-11T19:33:49.513 に答える