我想验证我的表单输入字段,或者你想说我有一个数组,我想用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配置数组上定义的错误;
答案 0 :(得分:1)
我只是用
$this->form_validation->set_data($array);
然后我验证表格
if ($this->form_validation->run('validatedata')) {
echo "sucess";
} else {
echo validation_errors();
}
现在它的工作正常而且很好。
答案 1 :(得分:0)
您必须在控制器中加载表单验证库..
ScrollView
答案 2 :(得分:0)
您必须向form_validation库提供数据:
$this->form_validation->set_data($array);
然后你可以使用
$this->form_validation->run('validatedata')
按预期。
如果要验证多个数组,则必须在验证每个数组后调用reset_validation()
。
检查system / libraries / Form_validation.php(大约255行,具体取决于您的CI版本)以获取更多信息。