了解MySQL 互動中的單行檢索
在您提供的程式碼中,您正在利用mysql_query() 函數來擷取結果從MySQL資料庫設置,然後嘗試使用mysql_fetch_array() 取得行。但是,您遇到了只能訪問第一行的問題。
mysql_fetch_array() 函數從結果集中檢索一行並將其表示為索引陣列。在您的情況下,每一行對應於一組以“a”、“b”或“c”開頭的匹配藝術家姓名。
當您第一次執行 mysql_fetch_array() 時,它會放置第一個將結果集的行放入 $array_result 變數中,使 $array_result[0] 可用。但是,後續在呼叫 mysql_fetch_array() 時不指定參數將始終傳回第一行,覆寫先前的結果。
要從結果集中取得多行,您需要在一個語句中重複 mysql_fetch_array() 函數。環形。例如,您可以使用 while 或 foreach 迴圈來迭代結果集,在每次迭代中呼叫 mysql_fetch_array() 並將結果陣列儲存在變數中。這將允許您單獨訪問每一行並根據需要回顯其內容。
這是使用 while 迴圈的範例:
$array = mysql_query("SELECT artist FROM directory WHERE artist LIKE 'a%' OR artist LIKE 'b%' OR artist LIKE 'c%'"); while($row = mysql_fetch_array($array)) { var_dump($row); // Outputs contents of each row }
此迴圈將迭代結果集並輸出每行的內容,讓您存取和回顯查詢中的所有可用資料。
以上是為什麼我的 MySQL `mysql_fetch_array()` 只回傳第一行?的詳細內容。更多資訊請關注PHP中文網其他相關文章!