主页/时间轴/墙网页建设

时间:2016-07-04 12:01:32

标签: php mysql post social

我在从数据库加载按日期排序的数据时遇到了麻烦。

我创建了一个数据库来保存数据(大约4个用户ID)。在时间线页面上,上述用户的帖子应该是“相对”回应,按日期排序。

但是当我编码时,第一个用户的帖子首先被加载,按日期排序,第二个用户等等....

请问我该如何解决这个问题?

编辑!

    $timeline = mysql_query("SELECT id FROM timeline_users") or die (mysql_error());
                    while($row = mysql_fetch_array($timeline)) {
                                $user = $row['id'];
                        $post = mysql_query("SELECT * FROM post WHERE userid = $user ORDER BY date DESC LIMIT 7") or die (mysql_error());
                                $p = mysql_fetch_array($post);


                                //post data
}
}

//等等

1 个答案:

答案 0 :(得分:0)

您希望按日期顺序显示帖子,而不是由用户显示?首先加载第一个用户的原因是因为您的第一个查询它没有任何订单,所以无论您按第二个查询的日期顺序,它仍将获得第一个用户,因为它是第一个加载到你的第二个问题。

试试这个:

 $timeline = mysql_query("SELECT id FROM timeline_users") or die (mysql_error());
 while($row = mysql_fetch_array($timeline)) {
     $user[] = $row['id'];
  }

  $newUsers = implode(",",$user);
  $post = mysql_query("SELECT * FROM post WHERE userid IN ($newUser) ORDER BY date DESC LIMIT 7") or die (mysql_error());
  $p = mysql_fetch_array($post);