0

我刚刚引用了这个答案,我最喜欢的是第一个解决方案,现在的问题是他已经给出了一个信息mysql_()但正在使用mysqli_(),所以使用第四个参数为真,我在用户登录时选择数据库,他登录的那一刻他被重定向到相应的页面,但显示连接被主动拒绝。任何想法如何使用 2 个数据库,1 是我的默认引擎数据库,我需要保持它运行我的框架,第二个数据库根据登录的用户运行相应的脚本......

我正在尝试的是这个

<?php
    $database_connect = mysqli_connect('localhost', 'root', '', 'engine');
    if(!$database_connect) {
        die ('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());
    }

    if(isset($_SESSION['system_id'])) {
        $system_database = mysqli_connect('localhost', 'root', '', $_SESSION['system_name'], true);
        if(!$system_database) {
            die ('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());
        }
    }
?>

PS我想要一种程序方式

4

1 回答 1

0

您不需要任何额外的参数,只需这样做

<?php
    $database_connect = mysqli_connect('localhost', 'root', '', 'engine');
    if(!$database_connect) {
        die ('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());
    }

    if(isset($_SESSION['system_id'])) {
        $system_database = mysqli_connect('localhost', 'root', '', $_SESSION['system_name']);
        if(!$system_database) {
            die ('Connect Error (' . mysqli_connect_errno() . ') '. mysqli_connect_error());
        }
    }

//Now whatever query you write, just do it like this

$access = mysqli_query($database_connection_var, "/*Query Goes Here*/"); //Will get database name from $database_connection_var

$access2 = mysqli_query($database_connection_var2, "/*Query Goes Here*/"); //Will get database name from $database_connection_var2
?>
于 2012-11-11T07:02:56.733 回答