Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/56.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 有限制的用户列表_Php_Mysql_Limit - Fatal编程技术网

Php 有限制的用户列表

Php 有限制的用户列表,php,mysql,limit,Php,Mysql,Limit,我有一个列表,其中有注册用户,5个在下面显示一个按钮,上面写着var more users。通过给出该按钮,将显示另外5个用户 我的问题是: SELECT * FROM users ORDER BY id DESC LIMIT 0, 5 其中,零是指每次为pin添加5,以查看更多信息 问题是,如果有人注册,而另一个人查看列表,则用户会重复显示 示例:如果我有10个以降序显示的用户,则应显示 10, 9, 8, 7, 6, 5, 4, 3, 2, 1 如果在用户看到这些寄存器和其他记录时,此按

我有一个列表,其中有注册用户,5个在下面显示一个按钮,上面写着var more users。通过给出该按钮,将显示另外5个用户

我的问题是:

SELECT * FROM users ORDER BY id DESC LIMIT 0, 5
其中,零是指每次为pin添加5,以查看更多信息

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

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

10, 9, 8, 7, 6, 5, 4, 3, 2, 1
如果在用户看到这些寄存器和其他记录时,此按钮让用户看到更多,则记录将加倍6。是

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

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

尝试使用SELECT DISTINCT只获取单个名称

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

我不认为有一个“正确”的方法来做这件事。不过,此页面有一些很好的提示:

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

WHERE id < $lastid ORDER BY id DESC LIMIT 0, 5
其中id<$lastid订单按id描述限制0,5

虽然顺序需要相同,但是如果您不使用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
  }
?>

这不是一个ID在一个查询中多次显示,而是在两个单独的查询中显示。我正在使用ajax并更改limit的值。我有其他问题,当我咨询列表用户时,其他用户正在注册,重复记录有限制。我需要解决这个问题。我不知道你的意思是什么,但即使你使用ajax,这个想法仍然是一样的。您可以重新加载整个列表,而不只是附加新的列表。记录是日期的排序器。我无法使用下一个查询,其中id<$lastid ORDER BY id DESC LIMIT 0,5您上面的问题没有说明这一点。不要捏造事实。这是第一条规则。始终使用您的确切设置-否则只会使事情变得更糟。
<a href="samepage.php?num=<?php echo $num+5;?>">
  <button id="show_more">show more</button>
</a>