首頁  >  文章  >  後端開發  >  為什麼我的 MySQL 查詢在 PHP 腳本中只會回傳一行?

為什麼我的 MySQL 查詢在 PHP 腳本中只會回傳一行?

Susan Sarandon
Susan Sarandon原創
2024-11-02 14:47:03237瀏覽

Why Does My MySQL Query Only Return One Row in My PHP Script?

為什麼MySQL 在PHP 腳本中只返回一行

在PHP 中,您可能會遇到MySQL 查詢僅檢索一行的問題當您期望多個結果時。當錯誤地使用 mysql_fetch_assoc() 函數時,就會出現這種差異。

提供的程式碼片段:

$query = mysql_query("SELECT `title`, `url_title` FROM `fastsearch` WHERE `tags` LIKE '%$q%' LIMIT 5");
$query2 = mysql_fetch_assoc($quer); // Misspelling of $query
print_r($query2);

僅透過呼叫 mysql_fetch_assoc($quer) 一次從查詢結果擷取第一行。要獲取所有行,您應該使用循環。

使用循環的正確程式碼:

$query = mysql_query("SELECT `title`,
                             `url_title`
                        FROM `fastsearch`
                       WHERE `tags`
                            LIKE '%$q%'
                       LIMIT 5");

while ($row = mysql_fetch_assoc($query)) {
    print_r($row);
}

在此修正的程式碼中,請注意以下內容:

  1. $query 變數拼字正確。
  2. while 迴圈將 mysql_fetch_assoc($query) 傳回的每一行分配給 $row 變數。
  3. 在循環內,您可以存取並列印每個行使用 $row.
的行數據

以上是為什麼我的 MySQL 查詢在 PHP 腳本中只會回傳一行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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