我有一个数据库表,其中有4条记录,其列_id自动递增。当我运行查询以获取所有记录时,它可以工作,但它不会回显所有ID,它只指向第一行并回显四次。我正在使用PHP和MySQLi。这是我的代码
查询代码
$sql = "SELECT * FROM att_table";
$query = $conn->query($sql);
$result = $query->fetch_assoc();
显示代码
do{
echo result['_id'];
}while($query->fetch_assoc());
输出1111而不是1234.请问有什么问题?
答案 0 :(得分:2)
您正在获取4个结果中的每一个,因此它会循环适当的次数;但是您只需将获取的结果分配给$result
一次,这样就可以得到唯一的_id
值得到回应
do{
echo $result['_id'];
}while($result = $query->fetch_assoc())
答案 1 :(得分:0)
你也可以使用foreach循环:
$sql = "SELECT * FROM att_table";
$query = $conn->query($sql);
$result = $query->fetch_assoc();
foreach($result as $data){
echo $data['_id'];
}