我正在使用 AJAX 从图片库加载更多数据。
我通过 PHP 变量来设置 $ 页码和其他数据。每次我从 AJAX 加载更多数据时,我希望 $page 增加 1,这样下次它就会获取列表中的下一个数据。这是我的 JS
$(window).bind('scroll', function() {
if($(window).scrollTop() >= $('#postswrapper').offset().top + $('#postswrapper').outerHeight() - window.innerHeight) {
$('div#loadmoreajaxloader').show();
$.ajax
({
url: "loadmore.php",
method: "get",
data: { page: "<?=$page?>", perpage: "<?=$perpage?>"},
success: function(html)
{
if(html)
{
$("#postswrapper").append(html);
$('div#loadmoreajaxloader').hide();
// ###### THIS IS NOT WORKING
<? $page++; ?>
}
else
{
$('div#loadmoreajaxloader').html('<center>No more posts to show.</center>');
}
}
}); // close AJAX
} // close if()
}); // close $(window)
我尝试合并 <? $page++; ?>
在成功功能中,但它不起作用。
我使用 $page
我的 SQL 查询中的变量
这是我的 loadmore.php 代码
if (isset($_GET['page']))
{
$page = $_GET['page'];
$perpage = $_GET['perpage'];
$start = ($page -1) * $perpage ;
$sql = mysql_query("select * from ..... limit ".$start.", ".$perpage." ");
$html = '';
while($blog2 = mysql_fetch_array($sql))
{
$html .='HTML GOES HERE';
}
echo $html;
exit;
}
我想要实现的是每次加载更多数据时从下一页开始加载 SQL 查询...关于我应该如何进行的任何建议?
最佳答案
首先,请记住清理 PHP 文件中的所有用户输入以防止 sql 注入(inject):
$page = $_GET['page'];
$perpage = $_GET['perpage'];
// escape the values, or make sure they are numbers, e.g.:
if(!is_numeric($page))
$page = 0;
if(!is_numeric($perpage))
$perpage = 10; // or whatever default value
并将您的 PHP 值写入 Javascript 变量并在您的 js 代码中使用它们:
var pageNumber = <?= $page ?>;
var perPage = <?= $perpage ?>;
$(window).bind('scroll', function() {
if($(window).scrollTop() >= $('#postswrapper').offset().top + $('#postswrapper').outerHeight() - window.innerHeight) {
$('div#loadmoreajaxloader').show();
$.ajax
({
url: "loadmore.php",
method: "get",
data: { page: pageNumber, perpage: perPage},
success: function(html)
{
if(html)
{
$("#postswrapper").append(html);
$('div#loadmoreajaxloader').hide();
// use the js variable
pageNumber++;
}
else
{
$('div#loadmoreajaxloader').html('<center>No more posts to show.</center>');
}
}
}); // close AJAX
} // close if()
}); // close $(window)
关于javascript - 每次调用 AJAX 时如何修改 PHP 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34186150/