所以我得到了mysql和ajax的记录,如下所示:
include 'config2.php';
$connection;
mysql_query("SET CHARACTER SET utf8 ");
$limit = 4; //how many items to show per page
$page = $_GET['page'];
if($page)
$start = ($page - 4) * $limit; //first item to display on this page
else
$start = 0; //if no page var is given, set start to 0
$limit++;
$query = "SELECT * FROM `adatok` ORDER BY `id` DESC LIMIT $start, $limit " ; //You don't need a ; like you do in SQL
$result = mysql_query($query);
while($row = mysql_fetch_array($result)){
}
工作正常,但问题是当您再次单击“加载更多”按钮时,此代码运行的位置,增量仅发生一次,并且当用户再次单击按钮时,我想增加此数字,然后再次。 那我怎么能自动完成这个呢? ajax部分:
function load(){
$( ".video-body" ).fadeIn( "slow", function() {
$.get( "next.php", function( data ) {
'start': start,
'limit': limit,
$( ".video-body" ).html( data );
// Animation complete
});
});
}
答案 0 :(得分:1)
一种简单的方法是声明一个全局JS变量,并通过查询字符串将其传递给next.php
,并在成功时将其递增limit
:
var start = <?php echo $start; ?>;
var limit = <?php echo $limit; ?>;
function load(){
$( ".video-body" ).fadeIn( "slow", function() {
$.get( "next.php?start=" + start + "&limit=" + limit, function( data ) {
$( ".video-body" ).html( data );
start = start + limit;
// Animation complete
});
});
}
然后在next.php
文件中,您可以使用$_GET['start']
和$_GET['limit']
访问该变量。
请注意我是如何使用$start
将PHP变量$limit
和<?php echo ... ; ?>
传递到Javascript中的 - 这是因为Javascript无法在没有显式传递的情况下看到PHP变量。上面的代码片段有很多假设,主要的一个原因是初始Javascript代码是在同一个PHP页面中加载的,该页面声明了起始$start
和$limit
变量。