执行加载更多函数时的LIMIT子句


LIMIT claus when doing a load more function

所以我试图加载更多的基本函数。

目前,数据库中有8个结果显示在我的页面上。

用户一滚动,就会出现一个loadmore按钮,单击该按钮就会向另一个php页面运行ajax请求,该页面将加载另外8个结果。这在实践中有效,但我不知道如何加载e,g,8-16,然后16,24等

我应该如何更改LIMIT子句,每次将数字增加8,以便获取下一组结果。(我测试它,每次只加载一个结果,这样我就可以看看它是否更容易改变它们。)

这里是ajax调用:

$(document).ready(function(){
    $('#loadmorebuilds-div').click(function() {
        $.ajax({
           url: 'includes/loadmorebuilds.php',
           success: function(html) {
              var el = jQuery(html);
              jQuery("#buildcontainer").append(el).masonry( 'reload' );
              $("#loadmorebuilds-div").stop().fadeOut();
           }
        });
    });
});

然后查询加载更多:

$query = "SELECT * FROM blogs WHERE frontpage = 1 LIMIT 8, 1";

有人能给我指正确的方向吗?希望我已经解释够了。

使用内部计数器或其他计数器查看应该加载的页面:

var pageIndex = 1;
$('#loadmorebuilds-div').click(function() {
    $.ajax({
       url: 'includes/loadmorebuilds.php?pageIndex=' + pageIndex,
       success: function(html) {
          var el = jQuery(html);
          jQuery("#buildcontainer").append(el).masonry( 'reload' );
          $("#loadmorebuilds-div").stop().fadeOut();
          pageIndex++;
       }
    });
});

在服务器端使用pageIndex值创建MySQL查询:

SELECT * FROM blogs WHERE frontpage = 1 LIMIT 8, 8;
SELECT * FROM blogs WHERE frontpage = 1 LIMIT 16, 8;
SELECT * FROM blogs WHERE frontpage = 1 LIMIT 24, 8; -- etc