你如何自定义/设置codeigniter错误?

时间:2010-08-16 23:00:15

标签: php codeigniter xhtml

我正在尝试为codeigniter中的错误消息显示自定义CSS / HTML,因此我可以为每个应用一个标记并设置它们的样式。

我尝试谷歌这个并搜索手册,但一直在寻找错误的条款 - 任何人都可以帮助我吗?

5 个答案:

答案 0 :(得分:23)

你可以这样做......

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

请参阅相关的Codeigniter documentation

注意:已更新以更正功能参考(验证应为form_validation)。

答案 1 :(得分:3)

我推荐更优雅的方式。

修复了MY_Form_validation.php文件并将其放入应用程序/库中,并使用以下代码覆盖默认分隔符。

class MY_Form_validation extends CI_Form_validation {

    public function __construct()
    {
        parent::__construct();

        $this->_error_prefix = '<p class="error">';
        $this->_error_suffix = '</p>';
    }
}

原始链接:http://chris-schmitz.com/changing-default-error-delimiters-in-codeigniter/

答案 2 :(得分:1)

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

答案 3 :(得分:0)

您可以使用方法&#34; set_error_delimiters&#34; of library&#34; Form Validation&#34;:

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

此外,您可以使用表单帮助程序内联代码:

validation_errors('<div class="error">', '</div>')

或者在form_validation库上创建了扩展类:

class MY_Form_validation extends CI_Form_validation
{
    public function __construct( $rules = array() )
    {
        // applies delimiters set in config file.
        if( ! isset( $rules['error_prefix'] ) )
        {
            $rules['error_prefix'] = '<div class="error">';
        }

        if( ! isset( $rules['error_suffix'] ) )
        {
            $rules['error_suffix'] = '</div>';
        }

        parent::__construct( $rules );
    }
}

我喜欢上一个方法,因为默认情况下允许设置样式并在方法解释之前覆盖。

对不起我的英文:)

答案 4 :(得分:0)

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

这是错误的语法。正确的是

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