4

据我所见,CodeIgniter 的分页计数错误,因为我的分页看起来像这样:

1 2 3 >

很好,问题出在每个分页号 url 中,除了第一个:

分页中的第2号具有以下网址:

http://my-url.com/index.php/page/ 1

3号有以下网址:

http://my-url.com/index.php/page/ 2

因此,数字是 URL 每次减 1。

我该如何解决这个问题,所以 urls 中的页码将与分页中的页码相同?

我的分页配置:

$config['per_page']    = 5;
$config['base_url']    = site_url('page');
$config['uri_segment'] = 2;
$page = $this->uri->segment(2);
$total_rows_array = $this->records->get($config['per_page'], $page * $config['per_page']); // parameters: limit, offset.
$config['total_rows']  = count($total_rows_array);
4

2 回答 2

15

遇到了同样的问题,我添加了这个配置行:

$config['use_page_numbers'] = TRUE;

就像一个魅力!

于 2013-01-22T15:45:26.923 回答
4

您是否在分页配置中使用页码?

CodeIgniters 分页的工作方式(默认情况下)是您设置要在代码中显示的记录数,CodeIgniter 计算出偏移量并将其附加到 URL。

第 1 页(如果您愿意的话)末尾没有数字的原因是因为没有偏移量,第 2 页的偏移量为 1,因为它偏移了那么多记录。哇,在我开始输入这个答案之前,这比我想象的要难解释得多!

:编辑:

此外,如果您在分页配置中使用页码,我想代码点火器正在获取 per_page 数量并将其乘以页码以获得记录的实际偏移量。

第 2 页的实际偏移量实际上是 per_page (15) * page_number (1) = 15。

于 2012-04-16T15:16:12.723 回答