【问题标题】:MySQL error message, mysql_connect(), any way to fix it?MySQL 错误消息,mysql_connect(),有什么方法可以修复它?
【发布时间】:2017-08-20 13:13:48
【问题描述】:

所以这是错误信息:

不推荐使用 PHP:mysql_connect():不推荐使用 mysql 扩展并将在未来删除:改用 mysqli 或 PDO

这是受影响的代码:

class wdClient {

    var $dbLink;                // The database link
    var $prefix;                // Table prefix
    var $script;                // The script running

    /**
     * Construct a new directory object.
     */
    function wdClient() {
        error_reporting(E_ALL ^ E_NOTICE);

        $this->prefix = WDDBPREFIX;

        // Connect to the database
        $this->dbLink = mysql_connect(WDDBHOST, WDDBUSER, WDDBPASSWD);

        // Select the database
        mysql_select_db(WDDBNAME, $this->dbLink) or die('Sorry, The site is currently unavailable!');
    }

其中WDDBPREFIXWDDBHOSTWDDBUSERWDDBPASSWDWDDBNAME 已在配置文件中定义。

我尝试过简单地使用mysqli_connect 而不是mysql_connect,但它不起作用。

【问题讨论】:

  • 解决方案是照它说的做,并切换到使用 MySQLi 或 PDO...但是您还必须更改查询等
  • 切换到MySqliPDO
  • 查看这个问题 (stackoverflow.com/questions/1390607/…) 了解更多信息。
  • “仅仅使用 mysqli_connect 而不是 mysql_connect 它不起作用。” - 取决于您使用它的“方式”。也许您对参数使用了相同的语法,或者根本没有将连接传递给它,或者混合了不同的mysql api。我们不知道,知道。
  • 问题是我不知道如何为这个 wdClient 类正确使用 mysqli。有人可以帮我吗?谢谢。

标签: php mysql mysqli pdo


【解决方案1】:

注意:千万不要用 MySQL,用这个方法!

//MySQLi information

        $db_host     = "localhost";
        $db_username = "username";
        $db_password = "password";

        //connect to mysqli database (Host/Username/Password)
        $connection = mysqli_connect($db_host, $db_username, $db_password) or die("Error " . mysqli_error());

        //select MySQLi dabatase table
        $db = mysqli_select_db($connection, "table") or die("Error " . mysqli_error());

祝你好运!

【讨论】:

    【解决方案2】:

    好吧,正如这里 http://php.net/manual/en/function.mysqli-connect.php 所指出的,你应该做这样的事情:

    $link = mysqli_connect("127.0.0.1", "my_user", "my_password", "my_db");
    

    显然,在您的情况下,它将如下所示:

    $link = mysqli_connect(WDDBHOST, WDDBUSER, WDDBPASSWD, WDDBNAME);
    

    然后你可以继续你的代码...

    if (!link){
        die('Sorry, The site is currently unavailable!');
    } else{
        // write your SQL here and fetch it
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-02-25
      • 1970-01-01
      • 2021-01-20
      • 2012-01-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-18
      相关资源
      最近更新 更多