PHP控制器:
$this->form_validation->set_rules('phone', $this->language->get_text('phone', 'global'), 'max_length[0]');
我需要为上面的行代码设置一个IF条件来返回这个:
if (The_Above_Line_Code is NOT empty)
{
$this->output->set_status_header(400);
exit;
}
因此,如果输入字段不包含字符,那么联系人表单可以正常工作,但如果包含字符,则应该返回一个空白页(set_status_header(400((。
PS:这是一种打击联系人形式的垃圾邮件的方法。
$this->form_validation->set_rules('phone', $this->language->get_text('phone', 'global'), 'max_length[0]|numeric');
如果不是数字,则表单验证失败。我不认为发球400分有什么道理。
https://www.codeigniter.com/userguide3/libraries/form_validation.html?highlight=form%20validate#rule-参考
更新
在更好地理解你的推理后,你可以简单地这样做:
if (!empty($this->input->post('phone'))) {
show_404(); // sets header + exits
}
您甚至可以使用show_404()
(CI函数(来记录错误:show_404('bot detected', true);
。