0

所以基本上,我试图用我的用户的帖子制作某种时间线,这给了我所有用户的帖子按时间排序。但相反,给了我以下内容:

*User1  'post1',
 User1  'post2',
 User1  'post3'..

*User2  'post1',
 User2  'post2',
 User2  'post3'..

我想要所有的帖子,而不是 user1 的所有帖子,然后是 user2 的所有帖子,等等。我希望这是有道理的,谢谢你们。

查询

  <?php
$varq1 = mysql_query('SELECT id2 FROM followers WHERE id ="'.$_SESSION['id'].'"');
    while($req5 = mysql_fetch_array($varq1)){

$req9=$req5['id2'];
$nsql = mysql_query('SELECT content, id, profile_id FROM contenido WHERE profile_id in("'.$req9.'") order by content_time desc');**strong text**
while($nrow = mysql_fetch_array($nsql)){    
?>

HTML/php 调用

<div class="divider">
<center><?php echo  "".$nrow['content'].""; ?><center/>
</div>
4

3 回答 3

1

您可以在一个查询中完成这两个查询......让您能够按时间排序

select content,id, profile_id from contenido where profile_id in (SELECT id2 FROM followers WHERE id ="'.$_SESSION['id'].'") order by content_time desc

获取它,您将获得您想要的内容:) 来自不同用户的所有帖子按时间排序。

于 2012-11-30T05:29:11.293 回答
0
'SELECT id2, content, c.id, profile_id
FROM followers f JOIN contenido c ON profile_id = id2
WHERE f.id = "'.$_SESSION['id']"'
ORDER BY content_time DESC, id2
于 2012-11-30T05:30:43.133 回答
0

请使用此代码然后检查

<?php
$varq1 = mysql_query('SELECT id2 FROM followers WHERE id ="'.$_SESSION['id'].'"');
while($req5 = mysql_fetch_array($varq1)){

$req9=$req5['id2'];
$nsql = mysql_query('SELECT content, id, profile_id FROM contenido WHERE profile_id='".$req9."' order by content_time desc');/*strong text*/
while($nrow = mysql_fetch_array($nsql)){    
?>
<div class="divider">
   <center><?php  '". echo $nrow['content']."'; ?><center/>
</div>
于 2012-11-30T05:34:31.303 回答