代码之家  ›  专栏  ›  技术社区  ›  Reece

无法通过php连接到mysqli数据库

  •  0
  • Reece  · 技术社区  · 6 年前

    我在一个网站上工作,它刚刚更新了php,所以现在自定义插件无法连接到数据库。最初我收到一个错误,说mysql()函数没有定义,所以我将它改为mysqli(),现在错误已经消失,但我仍然无法连接。我已经检查并激活了mysqli。

    这是我的密码:

    require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-config.php' );
    require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-includes/wp-db.php' );
    
    $link = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD); 
    
    if (!$link) {
        die('Not connected : ' . mysqli_error());
    }
    
    if (! mysqli_select_db(DB_NAME)) {
        die ('Can\'t use db : ' . mysqli_error());
    }
    

    我一直得到的是“不能使用db:”。我还尝试过定义DB_主机ect,但没有成功。有什么想法吗?

    2 回复  |  直到 6 年前
        1
  •  3
  •   matiit    6 年前

    mysqli_select_db 如果第一个参数是MySQL链接,请尝试以下操作:

    require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-config.php' );
    require_once( $_SERVER['DOCUMENT_ROOT'] . '/wp-includes/wp-db.php' );
    
    $link = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD); 
    
    if (!$link) {
        die('Not connected : ' . mysqli_error());
    }
    
    if (! mysqli_select_db($link, DB_NAME)) {
        die ('Can\'t use db : ' . mysqli_error());
    }
    

    对于未来,我建议您阅读PHP中的错误报告,它将帮助您更快地发现此类错误。

        2
  •  1
  •   PatrickStel    6 年前

    如果使用mysqli_error(),则必须提供最新的函数。

    在您的情况下,mysqli_错误($link)