在我们的一个较旧的应用程序中,我们看到了一段时间以来的奇怪行为。
我们有多个页面需要多个数据库的数据,直到最近一切正常。
如果我们需要多个数据库,我们像这样初始化它们:
$linkDatabaseOne = fConnectToDatabase( "Database1" );
$linkDatabaseTwo = fConnectToDatabase( "Database2" );
之后我们执行如下查询:
mysql_query( "QUERY", $linkDatabaseOne );
mysql_query( "QUERY", $linkDatabaseTwo );
fConnectToDatabase 函数
function fConnectToDatabase( $Server = null ) {
switch( $Server ) {
case "Database2":
$link = @mysql_connect ( "localhost", "USER", "PW" )
or die ("No connection");
mysql_select_db("Database2");
break;
case "Database1":
$link = @mysql_connect ( "localhost", "USER", "PW" )
or die ("No connection");
mysql_select_db("Database1");
break;
}
return $link;
}
但问题是此时两个查询都将被抛出到 Database2,因为那个有最后一个 openend 连接。
有谁知道什么会导致这个问题?