LIMIT克劳斯在执行加载更多功能时

时间:2013-11-23 10:56:47

标签: javascript php jquery ajax

所以即时尝试基本加载更多功能。

目前,我的数据库中显示了8个结果。

用户滚动后,会出现一个加载更多按钮,点击它会向另一个php页面运行一个ajax请求,该页面会加载另外8个结果。这在实践中有效,但我无法弄清楚如何加载e,g,8 - 16,然后是16,24等。

如何更改我的LIMIT克劳以增加数量,例如每次8次,以便获取下一组结果。 (我每次只加载1个结果进行测试,以便我可以看到它是否更容易改变它们。)

所以这里是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";

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

1 个答案:

答案 0 :(得分:0)

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

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