Php Jommla使用多站点扩展连接到另一个数据库

Php Jommla使用多站点扩展连接到另一个数据库,php,joomla,Php,Joomla,我正在使用Joomla2.5和多站点扩展。当我在第X页时,Joomla使用的是X-database,在第Y页时使用的是Y-database——没关系。不幸的是,我不得不切换到另一个数据库。我是怎么说的连接到当前站点数据库,因为多站点扩展可以工作,每个页面都有自己的带有数据库参数的配置文件。有什么想法吗?试试看。 以下是解决方案: $option['driver'] = 'mysqli'; $option['host'] = 'localhost'; $option['user'] = 'root

我正在使用Joomla2.5和多站点扩展。当我在第X页时,Joomla使用的是X-database,在第Y页时使用的是Y-database——没关系。不幸的是,我不得不切换到另一个数据库。我是怎么说的连接到当前站点数据库,因为多站点扩展可以工作,每个页面都有自己的带有数据库参数的配置文件。有什么想法吗?

试试看。 以下是解决方案:

$option['driver'] = 'mysqli';
$option['host'] = 'localhost';
$option['user'] = 'root';
$option['password'] = '';
$option['database'] = 'joomla';
$option['prefix'] = 'a45gy_';
JFactory::destroy();
$db = JDatabase::getInstance($option);
if (JError::isError($db)) {
    jexit('Database Error: ' . $db->toString());
}

if ($db->getErrorNum() > 0) {
    JError::raiseError(500, 'JDatabase::getInstance: Could not connect to database <br />');
}
parent::setDbo($db);
$option['driver']='mysqli';
$option['host']='localhost';
$option['user']='root';
$option['password']='';
$option['database']='joomla';
$option['prefix']='a45gy_';
JFactory::destroy();
$db=JDatabase::getInstance($option);
if(JError::isError($db)){
jexit('数据库错误:'。$db->toString());
}
如果($db->getErrorNum()>0){
JError::raiseError(500,'JDatabase::getInstance:无法连接到数据库
); } 父::setDbo($db);
当我使用
$dbX=JFactory::getDbo($host、$user、$pass、$database、$prefix=null、$select=true)时连接到站点数据库更改了代码。我犯了个错误。我试过了,结果成功了。
$option['driver'] = 'mysqli';
$option['host'] = 'localhost';
$option['user'] = 'root';
$option['password'] = '';
$option['database'] = 'joomla';
$option['prefix'] = 'a45gy_';
JFactory::destroy();
$db = JDatabase::getInstance($option);
if (JError::isError($db)) {
    jexit('Database Error: ' . $db->toString());
}

if ($db->getErrorNum() > 0) {
    JError::raiseError(500, 'JDatabase::getInstance: Could not connect to database <br />');
}
parent::setDbo($db);