我正在尝试为新闻Feed中的帖子实现无限滚动功能。只要用户到达页脚,帖子就会加载到新闻Feed中。
在SQL查询中使用JQuery变量作为OFFSET
的问题
每一个Ajax调用执行,我想增加查询的偏移时间。我想以某种方式将jquery偏移量变量传递给php和SQL查询。
守则
// Infinite Scroll
var offset = 0;
if($(window).scrollTop() >= $('.post-wrapper').offset().top + $('.post-wrapper').outerHeight() - window.innerHeight) {
if (element_in_scroll("footer")) {
$('div.loadmoreajaxloader').show();
$.ajax({
url: '<?= Config::get('URL'); ?>index/loadPosts',
success: function(data) {
if(data) {
$(".post-wrapper").append(data);
$('div.loadmoreajaxloader').hide();
offset++;
} else {
$('div.loadmoreajaxloader').html('<center>Es sind keine weiteren Posts vorhanden.</center>');
}
}
});
}
});
查询
$query = $database->prepare("SELECT * FROM posts LIMIT 1 OFFSET $offset");
$query->execute();
return $query->fetchAll();
偏移增量作为我想它,在jQuery代码(
console.log(offset)
OUPUTS 1,2 ,3等等......)。但是,我无法将此变量放入SQL查询中。
我会非常感谢任何帮助!
你能详细说说吗?我没有做什么?对不起,我对此很新。 – Schwesi
然后将'$ _GET ['offset']'绑定到查询。不像你现在正在做什么,因为这将允许SQL注入。如果你像这样打开你的SQL,准备就没有意义了。 – Xorifelse
这比我想象的要容易得多!非常感谢你的回答! – Schwesi