2013-03-17 37 views
0

我有一个页面上的项目评论部分,但这可以得到很长的一些项目上的许多意见。显示几个数据库结果,但然后显示所有点击 - 建议

我想要做的是仅显示前x个结果,然后点击链接例如查看所有我可以向他们展示所有项目(不是所有项目)。

目前我使用这样的事:

$result350 = mysql_query("SELECT * FROM messages where id=$id order by dateadded asc",$db); 

echo '<div id="wallWall$id">'; 

    while($db88 = mysql_fetch_array($result350)){ 

     echo '<div class="msgs_row"> 
      <div class="msgs_pic"> 
       <img src="'.$db88[live_prof_pic].'"> 
      </div> 
      <div class="msgs_comment">' 
       .stripslashes($db88[comment]). 
      '</div></div>'; 

    } 

    echo '</div>'; 

所以,我可以改变while循环类似

for ($i = 1; $i <= 4; $i++) { 
    echo ... 
} 

所以我只显示第4,但我怎么会再修改显示全部显示?

我应该加载第一个4到一个div和其余的隐藏然后只是$('#hiddenResults').show();点击查看所有链接或有没有更好的更有效的方法来做到这一点?

页面上可能有多达30个项目,其下有评论。

不确定哪些标签用于此目的将与一对夫妇一起运行。

回答

1

我推荐在第一个查询中使用LIMIT,只提取5条评论。

$result350 = mysql_query("SELECT * FROM messages where id=$id order by dateadded asc LIMIT 5",$db); 

在点击链接加载所有的意见,你可以让一个Ajax调用服务器,获取所有评论(不要使用极限在查询这段时间或保持较高的,说50)。那么你可以使用javascript或jquery显示所有在ajax响应中收到的评论。

0

如果您有很多额外的注释需要加载,那么Ajax解决方案很好。如果它不是真的那么多(比如30-50),那么按照您提到的将它们与原始页面一起发送的方式进行操作可能会更好,但在隐藏的div中。

相关问题