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