0
[...]
$count = count($array_sub);

$per_page = 12;

$numero_pagine = ceil($count / $per_page);

$separator = "?pos=" ;
$page_corrente = (isset($_GET["pos"]) AND intval($_GET["pos"])) ? min($numero_pagine, intval($_GET["pos"])) : 1;

$righi_da_visualizzare = array_slice($array_sub, ($page_corrente-1)*$per_page, $per_page);

/* -- Pagination -- */
$output_pagination = '<nav id="pagination">';
for($i=1; $i<=$numero_pagine; $i++ ) { 
    if($i!=$page_corrente) {
        $output_pagination .= '<a href="' . $_SERVER["PHP_SELF"] . $separator . $i . '">' .$i . '</a>';
    }
}
$output_pagination.= "</nav>";

总共有 27 个元素,所以我有 3 页;

第一页:12 个元素 | /page.php?pos=1

第二页:12 个元素 | /page.php?pos=2

第三页:3 个元素 | /page.php?pos=3

这是对的; 但是最后一页(第三页)中的元素在页面中重复(不能存在)......例如:

第四页:3 个元素 | /page.php?pos=4

第五页:3 个元素 | /page.php?pos=5

等等。

为什么还有其他带有元素的 ?pos?

4

1 回答 1

0

这是因为这条线

$page_corrente = (isset($_GET["pos"]) AND intval($_GET["pos"])) ? min($numero_pagine, intval($_GET["pos"])) : 1;

在这里,当您的 $_GET 大于三时,您将其设置为三,因此您将获得三页。

于 2013-03-27T14:14:24.477 回答