表中的最大ID为整数

时间:2014-10-11 16:45:26

标签: php mysql

所以我想从我的表中选择最高(或最新)的id并将其用于循环"用于"。

我确实喜欢这个:

$sql1="SELECT MAX(id_i) FROM images;";
$max_id=  mysqli_query($link, $sql1);

for($i=0;$i<=$max_id;$i++)
{
...
}

但是我得到一个错误:类mysqli_result的对象无法转换为int:/

2 个答案:

答案 0 :(得分:0)

使用它像:

$sql1="SELECT MAX(id_i) as max_id FROM images;";
$result=  mysqli_query($link, $sql1);


//for loop
$row = mysqli_fetch_object($result);
for($i=0;$i<=$row->max_id;$i++)
{
...
}

//or using while (recommended)
while($row = mysqli_fetch_object($result)) 
{
...
}

答案 1 :(得分:0)

就像Andrew P.写的评论一样,mysqli_query返回的对象不是int。来自文档:

  

失败时返回FALSE。对于成功的SELECTSHOWDESCRIBEEXPLAIN个查询mysqli_query()将返回mysqli_result个对象。对于其他成功的查询,mysqli_query()将返回TRUE

因此,您需要从对象中检索所需属性。在您的情况下,例如:$row->max_id