用户列表有限制

时间:2013-04-07 12:41:04

标签: php mysql limit

我有一个列表,其中注册用户和5显示下面的按钮,表示更多用户。通过给该按钮显示另外5个用户。

我的疑问:

SELECT * FROM users ORDER BY id DESC LIMIT 0, 5

每次为引脚提供0时,零加5,

问题在于,如果有人在另一个人查看列表时注册,则用户会重复显示。

示例:如果我有10个以降序显示的用户应该显示,

10, 9, 8, 7, 6, 5, 4, 3, 2, 1

如果用户在此按钮后看到这些寄存器和其他记录,则会让用户看到更多,将记录加倍6.是

10, 9, 8, 7, 6, 6, 5, 4, 3, 2, 1

有什么方法可以解决这个问题吗?

4 个答案:

答案 0 :(得分:1)

是的,您不再使用相同的查询,但是您使用从那里获取的最后一条记录的ID作为起点。

WHERE id < $lastid ORDER BY id DESC LIMIT 0, 5

虽然订单需要相同

答案 1 :(得分:1)

如果您不使用ajax,则可以使用

<?php

  if(!isset($_GET['num']))
      $num = 5;
  else
      $num = $_GET['num'];

  $res = mysql_query("SELECT * FROM users ORDER BY id DESC LIMIT 0, '".$num."' ");

  while($arr = mysql_fetch_array($res))
  {
    //display data
  }
?>

然后显示更多按钮

<a href="samepage.php?num=<?php echo $num+5;?>">
  <button id="show_more">show more</button>
</a>

你可以使用ajax

让它变得更加漂亮

答案 2 :(得分:0)

尝试使用SELECT DISTINCT来获取个人名称

SELECT DISTINCT * FROM users ORDER BY id DESC LIMIT 0, 5

答案 3 :(得分:0)

我认为没有“正确”的做法。不过,此页面提供了一些很棒的提示:https://coderwall.com/p/lkcaag