首頁 >後端開發 >php教程 >為什麼我收到「未捕獲的錯誤:呼叫未定義的函數 mysql_connect()」?

為什麼我收到「未捕獲的錯誤:呼叫未定義的函數 mysql_connect()」?

DDD
DDD原創
2024-11-04 03:54:02969瀏覽

Why Am I Getting

無法連接到MySQL 伺服器:了解「未捕獲錯誤:呼叫未定義的函數mysql_connect()」

嘗試建立連線時對於使用XAMPP 的MySQL 伺服器,您可能會遇到錯誤「致命錯誤:未捕獲錯誤:呼叫未定義的函數mysql_connect()」。當程式碼嘗試存取 mysql_connect() 函數時,通常會出現此錯誤,該函數在 PHP 版本 7 及更高版本中已被棄用。

錯誤原因

PHP 7 停止支援 mysql_* 函數。這包括 mysql_connect(),它用於連接到 MySQL 資料庫。為了解決這個問題,有兩個替代選項:

1。 MySQLi(MySQL 改良版)

MySQLi 是一個增強且更現代的 API,可提供改進的效能、安全性和對各種功能的支援。要使用MySQLi,請按照下列步驟操作:

<code class="php">// Include the MySQLi library
require_once 'mysqli.php';

// Create a MySQLi instance
$mysqli = new mysqli($mysql_hostname, $mysql_username, $mysql_password, $mysql_database);

// Check for connection errors
if ($mysqli->connect_error) {
    echo "Connection failed: " . $mysqli->connect_error;
    exit;
}</code>

2. PDO(PHP 資料物件)

PDO 是一個資料庫抽象層,允許PHP 使用通用層介面與不同的資料庫進行互動。要使用PDO for MySQL,請按照以下步驟操作:

<code class="php">// Include the PDO MySQL driver
require_once 'pdo_mysql.php';

// Create a PDO instance
$pdo = new PDO("mysql:host=$mysql_hostname;dbname=$mysql_database", $mysql_username, $mysql_password);

// Check for connection errors
if ($pdo->connect_error) {
    echo "Connection failed: " . $pdo->connect_error;
    exit;
}</code>

注意:

確保您在XAMPP 中使用的PHP 版本與所選替代方案相容( MySQLi 或PDO)。此外,請驗證您的 php.ini 檔案中是否啟用了必要的 MySQL 擴充功能。

以上是為什麼我收到「未捕獲的錯誤:呼叫未定義的函數 mysql_connect()」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn