我想在上传帖子时抓取并显示不同用户的帖子..我可以通过用户ID访问他们的帖子,但帖子是按顺序而不是随机或新帖子。例如,如果2个用户已经发布了4次,3次第一次用户和1次第2次此序列第1个用户发布,第2个用户发布,1个用户,1个用户,我的查询将首先返回用户1的3个帖子然后单个帖子用户2与原始序列和时间无关(旧/新)。
我的查询是
//this is my table -> user_post(userid,post_id,post,time)
$query = "SELECT * FROM user_post ORDER BY (time) DESC WHERE userid = '$user_id'";
并且我只想加载 4个最新的帖子,当我下次刷新该字段时,必须加载后4个帖子。
这是一个基于Android客户端服务器的应用程序,我正在使用volley
进行http调用并使用JSON交换数据。
答案 0 :(得分:0)
您是否尝试使用limit
条款?
你的代码就像:
$query = "SELECT * FROM user_post ORDER BY (time) DESC WHERE userid = '$user_id' LIMIT 4";
答案 1 :(得分:-1)
使用循环
$counter = 1;
$offset = 4;
while (($user = $db->fetch($query)) )
{
$start = $counter * 4;
$query = "SELECT * FROM user_post ORDER BY (time) DESC WHERE userid = '$user_id' LIMIT '$start','$offset'";
$counter++;
}
答案 2 :(得分:-2)
您需要在查询中包含LIMIT
子句:
$query = "SELECT * FROM user_post ORDER BY (time) DESC WHERE userid = '$user_id' LIMIT 0,4";
在每个请求中,您都会计算$lastLoadedRow
中已加载的行数。你接下来几次加载你会做:
... LIMIT $lastLoadedRow,4;
... LIMIT $lastLoadedRow,4;
... LIMIT $lastLoadedRow,4;