1. 程式人生 > >PHP連線mysql資料庫報錯:Call to undefined function mysql_connect()

PHP連線mysql資料庫報錯:Call to undefined function mysql_connect()

問題描述

剛開始學php,系統環境是Ubuntu+PHP7.0+Mysql5.7+Apache2。
執行一個數據庫連線測試示例時報錯:

[client 127.0.0.1:37496] PHP Fatal error:  Uncaught Error: Call to undefined function mysql_connect() in /var/www/html/test.php:2\nStack trace:\n#0 {main}\n  thrown in /var/www/html/test.php on line 2

示例程式碼是:

<?PHP
    $conn=mysql_connect("localhost"
,"root","root"); if($conn){ echo"ok"; }else{ echo"error"; } ?>

解決辦法

查閱資料後發現,原來是從PHP5.0開始就不推薦使用mysql_connect()函式,到了php7.0則直接廢棄了該函式,替代的函式是:

mysqli_connect();

用法是:

$con=mysqli_connect("localhost","my_user","my_password","my_db");
<?PHP
    $conn=mysqli_connect("localhost"
,"root","root"); if($conn){ echo"ok"; }else{ echo"error"; } ?>

總結

  1. 在Ubuntu+PHP7.0+Mysql5.7+Apache2的系統環境下報該錯,是因為mysql_connect()函式被棄用了,當跟著過時的教程學習時可能會遇到該錯誤。(注意:如果是windows系統,則更可能是Apache2沒有啟用mysql,詳情自行百度)
  2. 當執行上面的測試程式碼時,介面上沒有任何反應,錯誤是在日誌中查閱出來的,日誌目錄在“/var/log/apache2/error.log”。