Php 为什么不是';我的CodeIgniter表单验证不起作用吗?
我试图在使用表单帮助器创建的简单联系人表单上设置验证。根本不进行验证。怎么了 在下面的代码中,“good”关键字始终显示,无论在表单中输入了什么,通过set_value设置的保存值永远不会显示 控制器Php 为什么不是';我的CodeIgniter表单验证不起作用吗?,php,codeigniter,validation,Php,Codeigniter,Validation,我试图在使用表单帮助器创建的简单联系人表单上设置验证。根本不进行验证。怎么了 在下面的代码中,“good”关键字始终显示,无论在表单中输入了什么,通过set_value设置的保存值永远不会显示 控制器 // Contact function contact() { $data['pageTitle'] = "Contact"; $data['bodyId'] = "contact"; $this->load->library(
// Contact
function contact() {
$data['pageTitle'] = "Contact";
$data['bodyId'] = "contact";
$this->load->library('form_validation');
$config_rules = array ('email' => 'required','message' => 'required');
$this->form_validation->set_rules($config_rules);
if ($this->form_validation->run() == FALSE) {
echo "bad";
$data['include'] = "v_contact";
$this->load->view('v_template',$data);
} else {
echo "good";
$data['include'] = "v_contact";
$this->load->view('v_template',$data);
}
}
查看
echo validation_errors();
echo form_open('events/contact');
// name
echo form_label('Name', 'name');
$data = array (
'name' => 'name',
'id' => 'name',
'maxlength' => '64',
'size' => '40',
'value' => set_value('name')
);
echo form_input($data) . "\n<br />";
// email address
echo form_label('Email Address', 'email');
$data = array (
'name' => 'email',
'id' => 'email',
'maxlength' => '64',
'size' => '40',
'value' => set_value('email')
);
echo form_input($data) . "\n<br />";
// message
echo form_label('Message', 'message');
$data = array (
'name' => 'message',
'id' => 'message',
'rows' => '8',
'cols' => '35',
'value' => set_value('message')
);
echo form_textarea($data) . "\n<br />";
echo form_submit('mysubmit', 'Send Message');
echo form_close();
echo验证_错误();
回音表_open(“事件/联系人”);
//名字
echo form_标签(“名称”、“名称”);
$data=数组(
“名称”=>“名称”,
'id'=>'name',
“maxlength”=>“64”,
“大小”=>“40”,
'value'=>设置_值('name')
);
回显表单输入($data)。“\n
”;
//电子邮件地址
回音表单标签(“电子邮件地址”、“电子邮件”);
$data=数组(
“名称”=>“电子邮件”,
'id'=>'email',
“maxlength”=>“64”,
“大小”=>“40”,
'value'=>设置_值('email')
);
回显表单输入($data)。“\n
”;
//信息
回显表单标签(“消息”、“消息”);
$data=数组(
“名称”=>“消息”,
“id'=>“消息”,
“行”=>“8”,
'cols'=>'35',
'value'=>设置_值('message')
);
回显表单\文本区域($data)。“\n
”;
回显表单_submit('mysubmit','Send Message');
回声形式_close();
看起来您没有按照新的表单验证库的方式设置验证规则(用户指南中有一个关于新语法的说明)。这似乎是旧的验证库的语法
请对您的$config\u规则
数组尝试此操作,并查看验证是否正常运行:
$config_rules = array(
array('field' => 'email', 'rules' => 'required'),
array('field' => 'message', 'rules' => 'required')
);
$this->form_validation->set_rules($config_rules);