doutangliang7769 2017-06-27 16:02
浏览 59
已采纳

Mysql多个数据库连接不起作用

I just tried to connect a secondary database like this example bellow but i don't know why refuse to work. Any idea?

I mention that each database connection works properly individualy.

$db_HOST = "localhost";
$db_USER = "db_user";
$db_PASS = "db_pass";
$db_NAME1 = "db_test1";
$db_NAME2= "db_test2";

$db_LINK1 = mysql_connect($db_HOST, $db_USER, $db_PASS) or die("Technical revision. Please try again later!");
mysql_select_db($db_NAME1, $db_LINK1) or die("Couldn't select database");

$db_LINK2 = mysql_connect($db_HOST, $db_USER, $db_PASS, true) or die("Technical revision. Please try again later!");
mysql_select_db($db_NAME2, $db_LINK2) or die("Couldn't select database");

Errors i get in the log file:

PHP Warning:  mysql_fetch_array() expects parameter 1 to be resource, boolean given in /config/global/variables.php on line 27

PHP Warning:  mysql_fetch_array() expects parameter 1 to be resource, boolean given in config/global/hello.php on line 3

Thank you!

  • 写回答

3条回答 默认 最新

  • duanjiaoxi4928 2017-06-27 16:16
    关注

    Do the following (with PDO instead of mysql_connect as the latter is deprecated):

    $db_HOST = "localhost";
    $db_USER = "db_user";
    $db_PASS = "db_pass";
    $db_NAME1 = "db_test1";
    $db_NAME2= "db_test2";
    
    try {
        $db_LINK1 = new PDO('mysql:host='.$db_HOST.';dbname='.$db_NAME1, $db_USER, $db_PASS);
        foreach($db_LINK1->query('SELECT * from FOO') as $row) {
            print_r($row);
        }
        $dbh = null;
    } catch (PDOException $e) {
        print "Error!: " . $e->getMessage() . "<br/>";
        die();
    }
    
    try {
        $db_LINK2 = new PDO('mysql:host='.$db_HOST.';dbname='.$db_NAME2, $db_USER, $db_PASS);
        foreach($db_LINK2->query('SELECT * from FOO') as $row) {
            print_r($row);
        }
        $dbh = null;
    } catch (PDOException $e) {
        print "Error!: " . $e->getMessage() . "<br/>";
        die();
    }
    

    More info here: php.net/manual/en/pdo.connections.php

    If the second connection fails check the exact error message.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 求差集那个函数有问题,有无佬可以解决
  • ¥15 【提问】基于Invest的水源涵养
  • ¥20 微信网友居然可以通过vx号找到我绑的手机号
  • ¥15 寻一个支付宝扫码远程授权登录的软件助手app
  • ¥15 解riccati方程组
  • ¥15 display:none;样式在嵌套结构中的已设置了display样式的元素上不起作用?
  • ¥15 使用rabbitMQ 消息队列作为url源进行多线程爬取时,总有几个url没有处理的问题。
  • ¥15 Ubuntu在安装序列比对软件STAR时出现报错如何解决
  • ¥50 树莓派安卓APK系统签名
  • ¥65 汇编语言除法溢出问题