Проверка формы codeigniter для массива, а не для отправки формы
Я хочу проверить мое поле ввода формы или вы хотите сказать, что у меня есть массив, и я хочу проверить этот массив с помощью codeigniter
Пример: у меня есть массив как:
$array['obj_type']='sample';
$array['obj_id']='44';
$array['user_id']='34566';
и мой конфиг проверки формы как:
'validatedata' => array(
array(
'field' => 'obj_type',
'label' => 'No Type Define here',
'rules' => 'required'
),
array(
'field' => 'obj_id',
'label' => 'No any item selected here',
'rules' => 'required|is_natural_no_zero'
),
array(
'field' => 'user_id',
'label' => 'No user logged in',
'rules' => 'required|is_natural_no_zero'
),
),
и когда я использую форму проверки ее не проверять массив
if ($this->form_validation->run('validatedata')) {
} else {
echo validation_errors();
}
вывести все ошибки, которые определены в массиве конфигурации validatedata;
3 ответа
Я просто использую
$this->form_validation->set_data($array);
тогда я проверяю форму
if ($this->form_validation->run('validatedata')) {
echo "sucess";
} else {
echo validation_errors();
}
Теперь все работает хорошо и хорошо.
Вы должны загрузить библиотеку проверки формы в свой контроллер.
$this->load->library(array('form_validation'));
Вы должны предоставить данные в библиотеку form_validation:
$this->form_validation->set_data($array);
и тогда вы можете использовать
$this->form_validation->run('validatedata')
как предполагалось.
Если вы хотите проверить несколько массивов, вам придется позвонить reset_validation()
после проверки каждого массива.
Проверьте system/library /Form_validation.php (около строки 255, в зависимости от вашей версии CI) для получения дополнительной информации.