Я использую систему разбиения на страницы в Codeigniter, и что-то не работает должным образом.Pagination in Codeigniter создает странные ссылки
У меня есть поиск, который дает всего 5 результатов.
Если я ставлю 1 пункт на странице он создает пагинации с ссылками как
example.com/suppliers/ Page 1
example.com/suppliers/1 Page 2
example.com/suppliers/2 Page 3
example.com/suppliers/3 Page 4
example.com/suppliers/4 Page 5
, который является правильным
Но если я ставлю 2 пунктов на странице ТТ выглядит как
example.com/suppliers/ Page 1
example.com/suppliers/2 Page 2
example.com/suppliers/4 Page 3
И если я положил 3 предмета на страницу, то это выглядит как
example.com/suppliers/ Page 1
example.com/suppliers/3 Page 2
Таким образом, он перескакивает страницы в порядке, эквивалентном результатам на страницу.
Это код, который используется для создания пагинации:
//Create the pagination links
$config['base_url'] = base_url().'/suppliers';
$config['total_rows'] = $this->data['count_suppliers'];
$config['per_page'] = RESULTS_IN_SEARCH;
$config['full_tag_open'] = '<ul class="pagination">';
$config['full_tag_close'] = '</ul>';
$config['prev_tag_open'] = '<li class="prev">';
$config['prev_tag_close'] = '</li>';
$config['prev_link'] = '<i class="fa fa-chevron-left"></i>';
$config['next_tag_open'] = '<li class="next">';
$config['next_tag_close'] = '</li>';
$config['next_link'] = '<i class="fa fa-chevron-right"></i>';
$config['cur_tag_open'] = '<li class="active"><a href="#">';
$config['cur_tag_close'] = '</a></li>';
$config['num_tag_open'] = '<li>';
$config['num_tag_close']='</li>';
$this->pagination->initialize($config);
$this->data['pagination']=$this->pagination->create_links();
В изображении прикрепленного вы можете увидеть результаты.
РЕШИТЬ: Добавление $ конфигурации [ 'use_page_numbers'] = TRUE; конфигурации постраничной и при выполнении запроса к базе данных 1 вычесть, чтобы страница 1 ищет LIMIT 0, 3 вместо LIMIT 3,3
вы можете попробовать '$ config ['use_page_numbers'] = TRUE;' – Naumov
Я добавил ваше предложение, а затем, когда фактически выполнял запрос к базе данных, вычитал 1 на номер страницы и работал.Это не самый стильный, но он работает. Благодарю. Положите это как ответ, и я буду голосовать. – Marcus
Вы можете отредактировать мой ответ. Я очень плохо знаю английский. Я понимаю, но не могу правильно писать. – Naumov