Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/410.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 具有get值的无限滚动问题_Javascript_Php_Mysql_Scroll - Fatal编程技术网

Javascript 具有get值的无限滚动问题

Javascript 具有get值的无限滚动问题,javascript,php,mysql,scroll,Javascript,Php,Mysql,Scroll,我正在尝试制作无限滚动脚本。它在index.php页面上运行良好。但是当我尝试在页面上对我的项目进行排序时,这就是出现问题的地方 代码: $limit = 10; $page = (int) (!isset($_GET['p'])) ? 1 : $_GET['p']; $sql = "SELECT * FROM items"; $start = ($page * $limit) - $limit; if( mysql_num_rows(mysql_query($sql)) > (

我正在尝试制作无限滚动脚本。它在index.php页面上运行良好。但是当我尝试在页面上对我的项目进行排序时,这就是出现问题的地方

代码:

$limit = 10; 

$page = (int) (!isset($_GET['p'])) ? 1 : $_GET['p'];

$sql = "SELECT * FROM items";

$start = ($page * $limit) - $limit;

if( mysql_num_rows(mysql_query($sql)) > ($page * $limit) ){
    $next = ++$page;
}
$query = mysql_query("{$sql} where sold = 0 ORDER BY id DESC LIMIT {$start}, {$limit}");

if(isset($_GET["price_lth"])){
    $query  = mysql_query("{$sql} where sold = 0 ORDER BY price ASC LIMIT {$start}, {$limit}");
}
if(isset($_GET["price_htl"])){
    $query  = mysql_query("{$sql} where sold = 0 ORDER BY price DESC LIMIT {$start}, {$limit} ");
}
if(isset($_GET["sold"])){
    $query  = mysql_query("{$sql} where sold = 1 ORDER BY id DESC LIMIT {$start}, {$limit}");
}
当我尝试对我的项目进行排序时,它是这样的:www.sample.com/?sell,当我向下滚动页面时,javascript添加了www.sample.com/?sell#/page/2,然后有2个项目被添加到已售出的项目中,但这2个项目是数据库中的前2个项目(不是标记为已售出的项目,似乎js从数据库中获取了前2条记录)。我的数据库中总共有14条记录。。为什么排序功能不起作用,有什么建议吗?因为如果我像这样编辑行(changed sell=1):

它在索引页面上工作正常,因为db上只有2个项目已售出。因此,除了这两个项目外,没有其他项目从数据库中获取


非常感谢您的帮助

您是否检查了页面变量设置是否正确?它确实会在该页面上仅显示2个已售出的项目,但当我向下滚动时,它会添加另外2个未售出的项目。
$query = mysql_query("{$sql} where sold = 1 ORDER BY id DESC LIMIT {$start}, {$limit}");