2015-06-26 2 views
1

я хочу проверить мое поле ввода формы или вы хотите сказать, у меня есть массив, и я хочу, чтобы проверить, что массив с помощью CodeIgniterCodeIgniter форма проверки на массив не образуют представить

Пример: У меня есть массив, как:

$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(); 
} 

его печать всей ошибки, которая определяется на основе массива config validatedata;

ответ

1

я просто использовать

$this->form_validation->set_data($array); 

тогда я проверить образуют

if ($this->form_validation->run('validatedata')) { 
echo "sucess"; 
} else { 
echo validation_errors(); 
} 

теперь его работает отлично и хорошо.

0

Вы должны загрузить библиотеку проверки формы в контроллере ..

$this->load->library(array('form_validation')); 
+0

Я уже загружаю библиотеку в файл автозагрузки –

+0

Вы покажете мне ошибку? –

+0

Поле No Type Define здесь не требуется. Не требуется, чтобы у вас был выбран предмет, указанный вами: Поле не заполнено никоим образом. –

0

Вы должны предоставить данные в библиотеку form_validation:

$this->form_validation->set_data($array); 

, а затем вы можете использовать

$this->form_validation->run('validatedata') 

как предполагалось.

Если вы хотите проверить несколько массивов, вам нужно будет позвонить reset_validation() после проверки каждого массива.

Проверьте систему/библиотеки/Form_validation.php (около строки 255, в зависимости от вашей версии CI) для получения дополнительной информации.