1

我正在使用 codeigniter 版本(2.1.4)。我在询问验证库是否提供了一种解决方案,可以将验证错误作为数组而不是 validtation_errors() 方法访问。

问候

4

3 回答 3

2

您需要扩展表单验证库CI_Form_validation定义您的函数validation_error_array变量$this->_error_array将有所有的错误

class MY_Form_validation extends CI_Form_validation
{
    function validation_error_array()
    {
        return $this->_error_array;
    }
}

请参阅以供参考

于 2013-10-05T10:56:11.453 回答
2

我不知道它是否适用于您指定的版本,但在最新版本中您可以使用

$this->form_validation->error_array()

并将其传递给查看甚至更好地将您的表单作为 ajax 请求发布,并将错误消息作为数组返回。除非您使用其他表单元素,否则您不需要初始化表单助手

于 2017-09-05T16:01:40.103 回答
1

您可以使用 validation_errors() 在一个地方显示所有错误,或者您可以通过以下方式显示每个错误消息和相应的字段。

 <?php echo form_error('username'); ?>
 <input type="text" name="username" value="<?php echo set_value('username'); ?>" size="50" />

您还可以更改错误分隔符。

全局分隔符。

$this->form_validation->set_error_delimiters('<div class="error">', '</div>');

单独的分隔符。

<?php echo form_error('field name', '<div class="error">', '</div>'); ?>

Or:

<?php echo validation_errors('<div class="error">', '</div>'); ?>

所以我不认为你应该需要在数组中获取验证错误。

于 2013-10-05T11:00:48.197 回答