【发布时间】:2013-07-01 11:16:09
【问题描述】:
我是 CI 新手,我只想知道有没有办法在 CI 中切换数据库,例如: 在登录页面,有一个下拉列表,您可以指定要连接的数据库,查看如下所示
<select name="select" id="select" >
<option value="1">DB1</option>
<option value="2">DB2</option>
</select>
我在 database.php 中有 2 个数据库,一个是 default另一个是 local
默认情况下,我使用默认的。
$active_group = 'default';
$active_record = TRUE;
我的问题是我如何根据下拉值指定 db,比如说如果我选择 DB1,连接到默认的,DB2 转到本地的...。 我知道如何手动切换数据库:
$this->load->database('default', TRUE); OR
$this->load->database('local', TRUE);
既然我有不同的控制器和模型,我怎么能做到这一点......我确实尝试过: 首先在登录函数中获取下拉列表的值:
$this->load->model('My_Model');
$db = $this->input->post('select')
$this->My_Model->getDB($db);
然后在我的模型中我得到了函数:
function getDB($db)
{
if($db ==1)
{
$this->db = $this->load->database('default', TRUE);
}
elseif($db ==2)
{
$this->db = $this->load->database('local', TRUE);
}
}
不幸的是,它不起作用.....任何帮助将不胜感激!!!!
【问题讨论】:
标签: php database codeigniter database-connection codeigniter-2