从数据库Codeigniter获取Lang

问题描述 投票:0回答:1

我尝试在codeigniter中创建多语言网站,但我有一个问题....

我想要两个郎(英语,德语)。并在没有网址的情况下切换....在管理面板设置中,我有:

<div class="form-group">
    <label for="language">Language</label>
    <select name="language" class="form-control">
       <option value="english">English</option>
       <option value="german" selected="selected">Deutsch</option>
   </select>
</div>

在db中有设置表并且只写入选中的lang。设置表:id 1 |语言德语

我有一个获得价值的模特

    function getLang(){
    $this->db->select('language');
    $this->db->where('id',1);
    $data=$this->db->get('settings')->result_array();
    return $data[0];
}

和Core-> My_Controller:

 $this->load->model('Setting');
    $this->lang->load('admin', $this->Setting->getLang()); //admin_lang.php is located in language folder in english and german folders

当我更改数据库语言中的值时,请不要更改...仅从config.php $config['language'] = 'english';加载默认语言

问题出在哪儿?

php codeigniter
1个回答
1
投票

希望对你有帮助 :

你的模型的方法getLang应该是这样的,这样做是为了返回语言

function getLang()
{
    $this->db->select('language');
    $this->db->where('id',1);
    $query =$this->db->get('settings');
    if ($query->num_rows() > 0)
    {
        return $query->row()->language;
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.