我想找到验证失败的所有字段名称。
我想在验证失败字段上应用错误类。我知道如何显示与该字段相关的错误消息。
但有些我想知道字段名称,以便我可以检查列表中的天气字段,并在该字段中添加错误类。
答案 0 :(得分:8)
感谢坑让我开始。但我需要补充一下,以防其他人在使用pit的答案时遇到同样的问题。在CI 2.0中,我尝试了它并得到了:
Call to undefined method MY_Form_validation::error_array()
由于我没有故意尝试从我的自定义表单验证中调用任何内容,因此我查看了/system/libraries/Form_validation.php。至少在2.0中,没有函数error_array()。
所以要修复它,如果你还没有,请创建一个文件/application/libraries/MY_Form_validation.php(区分大小写)并输入以下代码:
<?php if ( ! defined('BASEPATH')) exit('No direct script access allowed');
class MY_Form_validation extends CI_Form_validation {
function __construct(){
parent::__construct();
}
function error_array(){
return $this->_error_array;
}
}
?>
然后执行print_r( $this->form_validation->error_array() )
即可。
答案 1 :(得分:5)
这取决于你将如何处理结果,但这是一个可用于获取错误字段的函数:
print_r( $this->form_validation->error_array() )
如果您需要更多内容,请查看/system/libraries/form_validation.php 从那里你可以找到你想要的任何东西,包括与lib相关的函数和变量名称。
答案 2 :(得分:0)
要设置自己的自定义消息,您可以编辑该文件,也可以使用以下功能:
$this->form_validation->set_message('rule', 'Error Message');
其中规则对应于特定规则的名称,而错误消息是您要显示的文本。
如果您在错误字符串中包含%s
,则会在您设置规则时将其替换为您用于字段的“人”名称。
$this->form_validation->set_rules(array('field' => 'name','label' => 'Full Name','rules' => 'required'));
$this->form_validation->set_message('required', '%s Must be fill!');
echo validation_errors() //Full name Must be fill!