Некортектный вывод пагинации, что делаю не так?
0
На первый трех страницах пагинация выводиться правильно, затем на 4 странице выводиться блок из предыдущей страницы плюс один следующий, что не так?
код
конструктор
public function type($slug=NULL){
$this->data['news_data'] = NULL;
$this->load->library('pagination'); //pagination
$offset = (int) $this->uri->segment(4); //pagination
$row_count = 2; //pagination
$count = 0; //pagination
if ($slug == 'news') {
$count = count($this->allnews_model->getNewsOnPage(0,0)); //pagination
$p_config['base_url'] = '/allnews/type/news/'; //pagination
$this->data['title'] = 'Новини';
$this->data['news_data'] = $this->allnews_model->getNewsOnPage($row_count, $offset); //pagination
}
//pagination config
$p_config['total_rows'] = $count;
$p_config['per_page'] = $row_count;
//pagination bootstrap
$p_config['full_tag_open'] = "<ul class='pagination'>";
$p_config['full_tag_close'] ="</ul>";
$p_config['num_tag_open'] = '<li>';
$p_config['num_tag_close'] = '</li>';
$p_config['cur_tag_open'] = "<li class='disabled'><li class='active'><a href='#'>";
$p_config['cur_tag_close'] = "<span class='sr-only'></span></a></li>";
$p_config['next_tag_open'] = "<li>";
$p_config['next_tagl_close'] = "</li>";
$p_config['prev_tag_open'] = "<li>";
$p_config['prev_tagl_close'] = "</li>";
$p_config['first_tag_open'] = "<li>";
$p_config['first_tagl_close'] = "</li>";
$p_config['last_tag_open'] = "<li>";
$p_config['last_tagl_close'] = "</li>";
//init pagination
$this->pagination->initialize($p_config);
$this->data['pagination'] = $this->pagination->create_links();
$this->load->view('templates/header', $this->data);
$this->load->view('news/type', $this->data);
$this->load->view('templates/footer'); }
}
модель
public function getNewsOnPage($row_count, $offset) {
$query = $this->db
->get('news', $row_count, $offset);
return $query->result_array();
}