无法加载请求的语言文件:language / en / form_validation_lang.php

时间:2015-04-27 13:17:13

标签: php codeigniter

我正在使用codeigniter 2.1.4

我正在使用form_validation库进行表单验证。

当我尝试运行该功能时,我收到以下错误

  

无法加载请求的语言文件:language / en / form_validation_lang.php

我扫描了所有文件。我没有在任何文件中使用或调用此语言文件,我收到此错误。

function insert(){
    $this->load->library('form_validation');

    $this->form_validation->set_rules('username_field', 'username', 'required');
    $this->form_validation->set_rules('firstname_field', 'firstname', 'required');
    $this->form_validation->set_rules('lastname_field', 'lastname', 'required');
    $this->form_validation->set_rules('email_field', 'email', 'required|valid_email|callback_isEmailExist');

    if ($this->form_validation->run() == FALSE) {

        $this->create();

    }
}

function isEmailExist($email) {
    $this->load->library('form_validation');
    $is_exist = $this->users->isEmailExist($email);

    if ($is_exist) {
        $this->form_validation->set_message(
            'isEmailExist', 'Email address is already exist.'
        );    
        return false;
    } else {
        return true;
    }
}

这是什么解决方案?

2 个答案:

答案 0 :(得分:8)

CI form_validation库使用语言文件显示错误消息。您正在使用required valid_email这些错误消息写在form_validation_lang.php内。

无论您是否加载,

form_validation库都会加载语言文件(form_validation_lang.php)。您可以打开库文件并查看运行函数,您将看到一行$this->CI->lang->load('form_validation'); < / p>

此文件位于system/language/your_language/application/language/your_language/

该错误消息表明您错过了任何文件夹中的文件。如果您下载原始CI文件,它应该在system/language/english/文件夹中。如果您没有看到文件download CI和在那里恢复文件。

答案 1 :(得分:0)

转到application/config/config.php您应该$config['language'] = 'en';。 将其更改为$config['language'] = 'english';