Я использую codeigniter и пытаюсь проверить свою форму с помощью пользовательской функции проверки обратного вызова. Но это действительно смущает меня, потому что валидация всегда возвращает FALSE.Codeigniter: Form_validation всегда возвращает FALSE
Вот form_input:
echo form_input(array(
'id' => 'aff_hos_0',
'name' => 'aff_hos[]',
'value' => '',
'class' => 'form-control auto_form',
'placeholder' => 'Masukkan Nama Rumah Sakit',
'style' => 'width:100%'));
Вот POST данные по форме:
Array
(
[0] => RS Pantai Indah Kapuk, Cengkareng, Jakarta, Jakarta
[1] => RS Siloam Kebonn Jeruk, Kb. Jeruk, Jakarta, Jakarta
)
Это когда я установил form_validation:
$this->form_validation->set_rules('aff_hos[]', 'Afiliasi Rumah Sakit ', 'callback_check_chosen_filled[Afiliasi Rumah Sakit]');
И это callback_check, то, что я пытаюсь достичь с помощью этого обратного вызова, - проверить, есть ли массив ввода (aff_hos []) не пустые:
function check_chosen_filled($post_array, $field) {
if (!isset($post_array) || (!is_array($post_array) && !count($post_array) > 0)) {
$this->form_validation->set_message('check_chosen_filled', $field . ' wajib diisi'.print_r($post_array));
return FALSE;
} else {
foreach ($post_array as $row):
if (strlen($row) == 0) {
$this->form_validation->set_message('check_chosen_filled', $field . ' wajib diisi');
return FALSE;
}
endforeach;
}
return TRUE;
}
http://stackoverflow.com/questions/23163697/this-form-validation-run-returns-false-without-validation-rules/33949081#33949081 – Jimubao