[英]PHP/MySQL: fetch one result
這是我的數據庫:
這是查詢:
選擇*來自用戶
現在,當我這樣做時:
$query = $connection->query($_GET['query']); // SELECT * FROM users
print_r($query->fetch_assoc());
我得到這個作為輸出:
數組([id] => 3 [username] => karel)
為什么不輸出ID 4和用戶名ccscs?
當我一會兒循環:
while($row = $query->fetch_assoc()){
print_r($row);
}
發生這種情況是因為您沒有對查詢進行任何排序,因此它會自動獲得第一條記錄。 如果您想返回最后一條記錄,可以按id desc進行排序,如下所示
SELECT * FROM users ORDER BY id DESC
如果您需要檢索所有記錄,則需要循環拋出記錄
while($row = $query->fetch_assoc())
{
print_r($row);
}
根據新的操作信息,我不會獲取兩次,但如下
$fields = array();
while($row = $query->fetch_assoc())
{
print_r($row);
$fields[] = $row;
}
fetch_assoc()
從結果集中檢索一行。 看這里 。
mysqli_result :: fetch_assoc-mysqli_fetch_assoc —獲取結果行作為關聯數組
您應該使用這樣的東西:
while($row = $query->fetch_assoc()){
print_r($row);
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.