MYSQL& PHP while循环检查输出前的上一行和下一行

时间:2015-12-03 17:55:53

标签: php mysql loops mysqli while-loop

我需要检查下一个和上一个MYSQL行/循环(相对于当前的while循环)的图像大小条件是否为真,并根据这个条件,用PHP安排当前循环的布局。

为了测试并验证代码是否正常工作,我正在检索每行的图像大小,并且只想输出每个循环的布局条件以及帖子ID。

下面的代码适用于当前的while循环以及下一个行项,但是我获得了前一行项的相同常量值。

我的错误在哪里?有没有更好/更简单的方法来做到这一点?也许避免多次查询?

Current: square (ID: 8674)
Previous: square (ID: 76)

Current: horizontal (ID: 8667)
Next: square (ID: 8674)
Previous: square (ID: 76)

Current: horizontal (ID: 8664)
Next: horizontal (ID: 8667)
Previous: square (ID: 76)

Current: horizontal (ID: 8633)
Next: horizontal (ID: 8664)
Previous: square (ID: 76)

Current: square (ID: 8632)
Next: horizontal (ID: 8633)
Previous: square (ID: 76)

输出:

HashMap

1 个答案:

答案 0 :(得分:2)

也许您需要添加到您的查询订单中,因为它始终从表结果的开头给出相同的解决方案

$previoussql= "SELECT * FROM posts WHERE id < $id AND image_featured!='' ORDER BY id DESC LIMIT 1"; 

或者ASC,因为我不知道你的表和结果集