首頁 >資料庫 >mysql教程 >為什麼我的 PHP 腳本中出現「警告:mysql_fetch_array():提供的參數不是有效的 MySQL 結果」錯誤?

為什麼我的 PHP 腳本中出現「警告:mysql_fetch_array():提供的參數不是有效的 MySQL 結果」錯誤?

Linda Hamilton
Linda Hamilton原創
2024-12-17 15:53:12462瀏覽

Why am I getting the

錯誤:「警告:mysql_fetch_array():提供的參數不是有效的MySQL 結果」

嘗試執行PHP 腳本時,您遇到以下錯誤訊息:

Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result [duplicate]

當mysql_fetch_array()函數提供了無效的 MySQL 結果。要解決此問題,讓我們檢查根本原因:

無效的 MySQL 結果

mysql_fetch_array() 函數需要一個有效的 MySQL 結果物件作為其參數。該物件由 mysql_query() 函數在執行查詢後傳回。如果查詢無效或失敗,mysql_query() 函數將傳回錯誤值而不是有效的結果物件。

檢查錯誤

確定是否查詢是問題的根源,您應該在執行查詢後檢查 mysql_error() 函數。此函數將提供查詢執行期間發生的任何錯誤的詳細資訊。

範例程式碼:

$result = $connector->query('SELECT title,content FROM staff_vacancies ORDER BY ordering LIMIT 0,100');
if (!$result) {
    die('Invalid query: ' . mysql_error());
}

修改後的query() 函數

為了改進錯誤處理並提供更詳細的錯誤訊息,您可以修改您的query() 函數DbConnector類別如下:

function query($query) {
    $this->theQuery = $query;
    $queryId = mysql_query($query, $this->link);
    if (!$queryId) {
        throw new Exception(mysql_error() . ".  Query was:\n\n" . $query . "\n\nError number: " . mysql_errno());
    }
    return $queryId;
}

此修改後的函數將拋出異常,並帶有詳細的錯誤訊息,包括錯誤號碼和失敗的查詢。透過處理此異常,您可以提供更用戶友好的錯誤訊息來幫助識別和解決問題。

以上是為什麼我的 PHP 腳本中出現「警告:mysql_fetch_array():提供的參數不是有效的 MySQL 結果」錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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