我有两个输入字段供用户输入一年的范围。如果用户没有输入任何内容,则页面将运行默认设置。如果用户输入其中一个字段,则还需要输入另一个字段以通过验证。
此外,我将规则保存为数组并放入application / config / form_validation.php。我该怎么做?
答案 0 :(得分:0)
您需要进行自定义检查。请参阅有关CallBacks on the CI Form Validation page的信息。因此,您将为字段1设置调用bak。在回调函数中,您将实现规则并返回TRUE或FALSE。
答案 1 :(得分:0)
只需将表单验证放在if strlen($_POST['field_1'])>0
或if isset($_POST['field_1'])
语句中,以便只有在field_1中有值时才会运行。
if(isset($_POST['field_1'])){
$this->form_validation->set_rules('field_1', 'Field 1', '');
$this->form_validation->set_rules('field_2', 'Field 2', 'required');
if (!$this->form_validation->run()) {
$errors = validation_errors();
} else {
//do your thing
}
}
将它放在你的控制器中。