Я использую 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
т. controlpanel/3
– номер 1 всегда жирный – он должен меняться до 2 или 3 и т. Д.!
Почему не так?
Когда я изменяю $config['base_url']
на base_url().'controlpanel/page'
тогда правильная разбивка base_url().'controlpanel/page'
выполняется путем смещения правильного номера, но ссылка 1 указывает на controlpanel/page
URL-адреса, которая является неправильной страницей для меня, как базы просто controlpanel
.
Спасибо всем за любую помощь.
Класс pagination должен проверять второй параметр, а не третий (по умолчанию).
Добавьте это в конфигурационный массив, чтобы изменить это:
$config['uri_segment'] = '2';
Это ничего не изменит, но будет полезно при создании необходимого URL-адреса. измените это:
$config['base_url'] = base_url().'controlpanel/';
к этому:
$config['base_url'] = site_url('controlpanel');
Также не забудьте проверить .. $ inboxMessageCount это значение, установленное с контроллера
$ config ['total_rows'] = $ inboxMessageCount;
Если это значение установлено, меньше предельного значения, то разбиение на страницы не будет отображаться.
Также поместите эту строку
$config['uri_segment'] = 3;
$config['first_tag_open'] = '<li>'; $config['first_tag_close'] = '</li>'; $config['first_url'] = site_url('your controller url');
поместите $config['first_url']
чтобы сделать работу с вашим первым URL-адресом