我在一个块上工作,这将显示最近10个帖子,当用户点击“加载更多”按钮时,我想显示10个较老的帖子。
如果我已经在使用DESC LIMIT,我如何选择最后10行?
mysql_query("SELECT title,id,alt_name FROM dle_post WHERE approve='1' AND date >= '$monthagodate'
AND date < '$curdate' + INTERVAL 1 day ORDER BY date DESC LIMIT $more;");发布于 2012-12-13 05:24:51
您只需使用一个参数即可使用LIMITing。但是您可以使用LIMIT x,y来指定x (要返回的第一条记录的位置)和y (要返回的记录数)。
将像results.php?start=x这样的变量传递给页面以设置起始位置。
if (!isset( $_REQUEST['start'] ) ) { $start = 0; } else { $start = (int)$_REQUEST['start']; }
mysql_query("SELECT title,id,alt_name FROM dle_post WHERE approve='1' AND date >= '$monthagodate'
AND date < '$curdate' + INTERVAL 1 day ORDER BY date DESC LIMIT $start,10;");然后,您可以生成一个指向下一个页面的链接,如下所示:
echo '<a href="results.php?start=' . ($_REQUEST['start']+10) . '">Next 10 results</a>';
发布于 2012-12-13 05:25:27
您应该添加另一个参数$start并使用以下查询
mysql_query("SELECT title,id,alt_name FROM dle_post WHERE approve='1' AND date >= '$monthagodate' AND date < '$curdate' + INTERVAL 1 day ORDER BY date DESC LIMIT $start, $more;");这里,$start用于告诉MySQL要获取的记录的起始点。
https://stackoverflow.com/questions/13848857
复制相似问题