-1

我为我的项目使用了 3 个不同的数据库。它包含相同的密码和用户名。代码是

$con = mysql_pconnect(hostname, username, password) or die("Connection     Error: " . mysql_error());
mysql_select_db(database_name, $con) or die("Error connecting to DB. " . mysql_error());

$con1 = mysql_pconnect(hostname, username, password) or die("Connection Error: " . mysql_error());
mysql_select_db(database_name, $con) or die("Error connecting to DB. " . mysql_error());

$con2 = mysql_pconnect(hostname, username, password) or die("Connection Error: " . mysql_error());
mysql_select_db(database_name, $con) or die("Error connecting to DB. " . mysql_error());

三个数据库没有正确连接。

4

4 回答 4

1

看起来您可能$在连接字符串的变量前面缺少任何一个:

$con = mysql_pconnect($hostname, $username, $password) or die("Connection     Error: " . mysql_error());

或者您需要确保在条目周围使用引号。

尽管如此,如果您正在编写新代码,您可能应该使用PDO连接到数据库。

编辑:此外,即使您正在建立新的连接,您仍然会继续使用您在语句$con中定义的第一个连接(全部使用而不是, )。mysql_select_db$con$con1$con2

于 2012-08-17T10:34:59.950 回答
1
$con = mysql_pconnect($hostname, $username, $password) or die("Connection     Error: " . mysql_error());
mysql_select_db($database_name, $con) or die("Error connecting to DB. " . mysql_error());

$con1 = mysql_pconnect($hostname, $username, $password) or die("Connection Error: " . mysql_error());
mysql_select_db($database_name1, $con1) or die("Error connecting to DB. " . mysql_error());

$con2 = mysql_pconnect($hostname, $username, $password) or die("Connection Error: " . mysql_error());
mysql_select_db($database_name2, $con2) or die("Error connecting to DB. " . mysql_error());

您在每个选择中都选择了第一个 db。这是对的。另请注意,您必须在 3 个 diff 变量中具有 3 个不同的数据库名称,如下所示

$database_name="dbase";
$database_name1="dbase1";
$database_name2="dbase2";

现在它将连接到所有 3 个数据库,而不是像您的代码中那样只连接一个。

于 2012-08-17T10:41:07.383 回答
0

如果那是您的代码,您将连续选择相同的数据库空闲时间。大概应该是这样的

 $con = mysql_pconnect(hostname, username, password) or die("Connection     Error: " . mysql_error());
        mysql_select_db(database_name, $con) or die("Error connecting to DB. " . mysql_error());

        $con1 = mysql_pconnect(hostname, username, password) or die("Connection Error: " . mysql_error());
        mysql_select_db(database_name1, $con1) or die("Error connecting to DB. " . mysql_error());

        $con2 = mysql_pconnect(hostname, username, password) or die("Connection Error: " . mysql_error());
       mysql_select_db(database_name2, $con2) or die("Error connecting to DB. " . mysql_error());

(更改了 mysql_select_db 中的数据库名称和连接)

于 2012-08-17T10:40:01.607 回答
0

看这取决于..如果您连接到 3 个不同的主机,那么您的连接参数可能会更改,但数据库名称可以相同..但是如果您尝试连接到同一数据库服务器,则必须选择 3 个不同的数据库。很简单..为什么要选择同一个数据库 3 次?

于 2012-08-17T10:45:08.597 回答