【发布时间】:2012-03-04 19:21:18
【问题描述】:
我目前正在构建一个应用程序,用户可以通过该应用程序输入他们自己的个人数据库连接以利用他们的 MySQL 数据库中的数据。
这意味着我将有两个数据库连接 - 我的本地(管理会话等)和用户远程一个。
谁能建议管理这两个连接的最佳方法?我查看了数据库组 - http://codeigniter.com/user_guide/database/connecting.html 但是用户数据库连接将由会话变量设置,因此我无法将远程数据库的详细信息放入配置文件中。
我尝试在我的班级中手动设置一个新的数据库组,例如:
$db['foreign']['hostname'] = $this->session->userdata('hostname');
$db['foreign']['username'] = $this->session->userdata('dbuser');
$db['foreign']['password'] = $this->session->userdata('dbpassword');
$db['foreign']['database'] = $this->session->userdata('dbname');
$db['foreign']['dbdriver'] = "mysql";
$db['foreign']['dbprefix'] = "";
$db['foreign']['pconnect'] = FALSE;
$db['foreign']['db_debug'] = TRUE;
$db['foreign']['cache_on'] = FALSE;
$db['foreign']['cachedir'] = "";
$db['foreign']['char_set'] = "utf8";
$db['foreign']['dbcollat'] = "utf8_general_ci";
$foreign_db = $this->load->database('foreign', TRUE);
但我在负载线上遇到异常:
You have specified an invalid database connection group.
谁能告诉我如何做到这一点?
非常感谢,本。
【问题讨论】:
-
请标记正确的答案,以便我们这些有相同问题的人轻松阅读。
标签: php mysql database codeigniter