Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/design-patterns/2.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
Mysql_查询中的PHP分页_Php_Mysql_Paging - Fatal编程技术网

Mysql_查询中的PHP分页

Mysql_查询中的PHP分页,php,mysql,paging,Php,Mysql,Paging,基本上,我的分页查询目前是这样的: $limit = mysql_escape_string($_GET['pagenumber']); if (empty($limit)){ $limit = "1"; } $page = $limit * 10; $flim1 = $page / 10; $flim = $page - 10; 在我的查询结束时,我有以下信息: ... LIMIT $flim, $page 如果页码为1,则

基本上,我的分页查询目前是这样的:

    $limit = mysql_escape_string($_GET['pagenumber']);
    if (empty($limit)){
    $limit = "1";
    }

    $page = $limit * 10;
    $flim1 = $page / 10;
    $flim = $page - 10;
在我的查询结束时,我有以下信息:

    ... LIMIT $flim, $page
如果页码为1,则为1;如果页码为2,则为10;如果页码为2,则为20。它在第一个页面上运行得非常好,但是当我进入第二个页面时,有20个结果,尽管当我重复$flim和$page时,它们分别是10和20。我不明白为什么


我听说了一些关于分页的双重查询。如果你知道这样做的简单方法,请发一个链接。我的方法行得通吗?

请参见
限制的说明
限制偏移,计数

因此,在您的情况下,它将是
LIMIT$flim,10

完整代码:

$page = mysql_escape_string($_GET['pagenumber']);
if (empty($limit)){
$page = "1";
}
$items_per_page=10;
$offset = ($page-1)*$_items_per_page;
然后
限制每页$offset,$items\u


此外,您需要对所有项目进行计数,以使其不超过最大页数

请参见
限制的规范
限制偏移,计数
因此,在您的情况下,它将是
LIMIT$flim,10

完整代码:

$page = mysql_escape_string($_GET['pagenumber']);
if (empty($limit)){
$page = "1";
}
$items_per_page=10;
$offset = ($page-1)*$_items_per_page;
然后
限制每页$offset,$items\u


此外,您需要计算所有项目,使其不超过最大页面

此外,如果您先计算1,10,然后再计算10,20(或10,10),您将显示项目#10两次。好吧,他在最初的问题中犯了错误。只是需要指出。出于某种原因,它在第一页上是0-10,然后是10-10,然后是20-10?出于某种原因,它在第一页上是0-10,然后是10-10,然后是20-10?编辑好,我现在看到了,偏移量,计数。所以我今天也学到了一些新东西:)!非常感谢,非常支持!此外,如果你先做1,10,然后再做10,20(或10,10),你将显示第10项两次。好吧,他在原来的问题中犯了错误。只是需要指出。出于某种原因,它在第一页上是0-10,然后是10-10,然后是20-10?出于某种原因,它在第一页上是0-10,然后是10-10,然后是20-10?编辑好,我现在看到了,偏移量,计数。所以我今天也学到了一些新东西:)!非常感谢,非常支持!