首頁 > 資料庫 > mysql教程 > 為什麼當存在多行時我的 PHP MySQL 查詢只會回傳一行?

為什麼當存在多行時我的 PHP MySQL 查詢只會回傳一行?

Susan Sarandon
發布: 2024-12-02 11:23:09
原創
991 人瀏覽過

Why Does My PHP MySQL Query Only Return One Row When Multiple Rows Exist?

MySQL 檢索僅限於單行

嘗試使用PHP 從MySQL 表中檢索多行時,您可能會遇到僅返回一行的情況,儘管有幾行符合您的查詢條件。此問題可能是由於程式碼實作不正確而引起的。

在提供的 PHP 程式碼中:

$query = mysql_query("SELECT `title`, `url_title` FROM `fastsearch` WHERE `tags` LIKE '%$q%' LIMIT 5");
$query2 = mysql_fetch_assoc($quer);
print_r($query2);
登入後複製

問題在於 mysql_fetch_assoc($quer) 的使用。此函數僅檢索結果集的第一行並將其指派給 $query2。若要檢索與查詢相符的所有行,您需要使用 while 迴圈來迭代結果集。

修正後的程式碼將是:

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

while ($row = mysql_fetch_assoc($query)) {
    print_r($row);
}
登入後複製

此修改將每一行分配給while 循環中的 $row 變量,確保檢索並顯示所有匹配的行。

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

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板