Проблема с идентификацией кода

Я использую codeigniter и его класс разбиения на страницы. Он отлично работает и выглядит примерно так:

"Первый < 1 2 3 4 5 > Последняя"

Вот мой код:

$this->load->library('pagination');
$config['base_url'] = base_url().'controlpanel/';
$config['first_link'] = 'First';
$config['total_rows'] = $count;
$config['per_page'] = '3'; 
$this->pagination->initialize($config); 
$data['pagination'] = $this->pagination->create_links();
$this->load->view('controlpanel', $data);

У меня это на моих маршрутах:

$route['controlpanel/(:num)'] = "controlpanel/index/$1";

Однако, когда я получаю другую страницу, т.е. controlpanel/3 - номер 1 всегда полужирный - он должен измениться до 2 или 3 и т.д.!

Почему это не так?

Когда я меняю значение $config['base_url'] на base_url().'controlpanel/page', тогда правильная разбивка страницы выполняется с помощью смещения правильного номера, но ссылка 1 указывает на URL controlpanel/page, которая для меня является неправильной страницей, поскольку база просто controlpanel.

Спасибо всем за любую помощь.

Ответ 1

Класс pagination должен проверить второй параметр, а не третий (по умолчанию).

Добавьте это в конфигурационный массив, чтобы изменить это:

$config['uri_segment'] = '2'; 

Это ничего не изменит, но будет полезно при создании требуемого URL. измените это:

$config['base_url'] = base_url().'controlpanel/';

:

$config['base_url'] = site_url('controlpanel');

Ответ 2

Также не забудьте проверить.. $ inboxMessageCount это значение, установленное с контроллера

$config ['total_rows'] = $inboxMessageCount;

Если это значение установлено, меньше предельного значения, то разбиение на страницы не будет отображаться.

Ответ 3

Также поместите эту строку

$config['uri_segment'] = 3;

Ответ 4

$config['first_tag_open']  = '<li>';

$config['first_tag_close'] = '</li>';

$config['first_url'] = site_url('your controller url');

поместите $config['first_url'], чтобы сделать работу с вашим первым тегом URL