数据库显示不正确的结果

时间:2015-10-26 22:22:17

标签: php mysql

我有一个数据库表,其中有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.请问有什么问题?

2 个答案:

答案 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'];
}