首頁  >  文章  >  資料庫  >  為什麼我在 PHP 中收到「mysql_fetch_assoc():提供的參數不是有效的 MySQL 結果資源」警告?

為什麼我在 PHP 中收到「mysql_fetch_assoc():提供的參數不是有效的 MySQL 結果資源」警告?

Susan Sarandon
Susan Sarandon原創
2024-10-27 11:35:021001瀏覽

Why Am I Getting the

"php warning mysql_fetch_assoc": A Mistake

本文深入研究了遇到「mysql_fetch_assoc():provided argument 的問題。使用PHP 從MySQL 資料庫存取資訊時出現「有效的MySQL 結果資源」警告。

通常,PHP 中的 mysql_* 函數以特定方式運行,如下所示:

<code class="php">$id = 1234;
$query = 'SELECT name, genre FROM sometable WHERE id=' . $id;
// $query is a string with the MySQL query
$resource = mysql_query($query);
// $resource is a *MySQL result resource* - a mere link to the result set
while ($row = mysql_fetch_assoc($resource)) { 
    // $row is an associative array from the result set
    print_r($row);
    // do something with $row
}</code>

在此範例中,$resource 表示透過執行查詢獲得的有效 MySQL 結果資源。當此資源傳遞給 mysql_fetch_assoc 時,它會從結果集中提取關聯數組。但是,如果將除有效結果資源之外的其他內容(例如字串、物件或布林值)傳遞給 mysql_fetch_assoc,則該函數會引發錯誤。

一個常見的陷阱是傳遞除有效查詢字串之外的其他內容到 mysql_query.在這種情況下,mysql_query 將傳回 FALSE,這不是有效的結果資源。嘗試將 FALSE 傳遞給 mysql_fetch_assoc 將觸發警告。

以上是為什麼我在 PHP 中收到「mysql_fetch_assoc():提供的參數不是有效的 MySQL 結果資源」警告?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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