1

月、日、年の 3 つの選択オプション リストがあります。

<?php echo form_dropdown('dob[month]',$dates['months'],set_value('dob[month]','0'));?>
<?php echo form_dropdown('dob[day]',$dates['days'],set_value('dob[day]','0'));?>
<?php echo form_dropdown('dob[year]',$dates['years'],set_value('dob[year]','0'));?>

ユーザーが入力した日付が有効かどうかを検証するために、次のルールを使用しています。

$this->form_validation->set_rules('dob','date of birth','valid_dob'); 

valid_dob は、次のように My_form_validation クラスで定義された関数です。

public function valid_dob($dob)
{   
    if(checkdate($dob['month'],$day['day'],$day['year']))
    {
        return true;
    }
    return false;
}

しかし、上記で定義した関数は codeigniter によって実行され
ません。3 つのドロップダウン リストを使用して日付を検証する方法を教えてください。

ありがとう。

4

1 に答える 1

2

独自の検証関数をコールバックする必要があります。callback_関数名の前に追加します

$this->form_validation->set_rules('dob','date of birth','callback_valid_dob['.$this->input->post('dob').']');  // You can pass array to function for getting all three values month,day,year
于 2012-12-02T06:25:45.557 に答える