1 回答

TA貢獻1796條經驗 獲得超10個贊
每次調用 mysqli_fetch_assoc() 的 mysqli 結果,都會返回下一個結果行的 assoc 數組。例如:您的表名為 user 有 3 條記錄:
id name
1 Mark
2 Sebastian
3 Smith
選擇所有這些記錄后:
$result = mysqli_query("SELECT * FROM user");
第一次獲取將返回第一個結果行的關聯數組
$posts = mysqli_fetch_assoc($result);
// $posts["id] = 1 -- $posts["id] = "Mark"
$result 的 mysqli_fetch_assoc 的第二次調用將返回第二結果行的 assoc 數組:
$posts = mysqli_fetch_assoc($result);
// $posts["id] = 2 -- $posts["id] = "Sebastian"
所以每次調用,都會返回下一條結果行,直到沒有記錄,該函數才會返回null。文檔
因此,如果您希望代碼按您希望的方式工作,我建議您刪除 while 循環中的第一個 mysqli_fetch_assoc 調用:
// delete this line
$posts = mysqli_fetch_assoc($result);
- 1 回答
- 0 關注
- 203 瀏覽
添加回答
舉報