確定MySQL 產生單行結果的問題
使用PHP 執行SQL 查詢時,有時可能會遇到MySQL 產生單行結果的情況即使資料庫包含多個匹配記錄,也僅傳回一行。這可能會導致意外結果,並且故障排除可能具有挑戰性。
在提供的範例中,PHP 腳本正在查詢名為 fastsearch 的表,以尋找標籤列與特定值相符的行。但程式碼中使用了 mysql_fetch_assoc() 函數,該函數只檢索結果集的第一行,導致只顯示一筆記錄。
解決單行檢索問題
要修正此問題並從資料庫中取得所有符合的行,我們可以將PHP 程式碼修改為如下:
$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 迴圈來迭代結果集。 mysql_fetch_assoc() 函數在迴圈內調用,每次執行時都會傳回下一行。循環繼續,直到沒有更多行可供提取,顯示所有匹配的記錄。
此解決方案解決了兩個常見問題:
以上是為什麼我的 MySQL 查詢在 PHP 中只會回傳一行,我該如何修復它?的詳細內容。更多資訊請關注PHP中文網其他相關文章!