我正在为表单设置新规则,即使表单字段不为空,我仍然会陷入验证检查块
验证功能:
if (isset($_POST['action']) && $this->input->post('action') === "add_category") {
echo "<pre>";
print_r($_POST);
$this->form_validation->set_rules($this->input->post('cat_name'), 'Category Name', 'required');
if ($this->form_validation->run() === FALSE) {
echo "false";
exit;
}
else {
echo "true" ; exit;
}
}
输出
Array
(
[action] => add_category
[cat_name_] => gbddbd
[parent_cat] => 1
[cat_status] => 1
)
false
我在视图中创建了简单的HTML
表单,而不是CI form helpers
的帮助
答案 0 :(得分:0)
您正在为&#34; cat_name&#34;设置规则表格字段是&#34; cat_name _&#34;所以它失败了。将表单字段名称更改为&#34; cat_name&#34;
答案 1 :(得分:0)
您使用set_rules()
正确的方法是:
$this->form_validation->set_rules('cat_name','Category Name', 'required')
说明: set_rules()的第一个参数表示您要验证的输入字段的名称。在您的代码中,您尝试分配输入字段的值,而不是名称