1 Востаннє редагувалося Blast (05.06.2014 12:14:34)

Тема: Pagination codeignitor просто , але складно . [Вирішено]

http://code-igniter.ru/user_guide/libra … ation.html
Код виду , працює справно  але коли мало записів відображає некоректну кількість сторінок так як загальна кількість новин статична

$config['total_rows'] = '9';

як передати параметри шо нижче

$this->load->model('blog_model');
                    $data['articles'] = $this->blog_model->get_news($config['per_page'],$this->uri->segment(3));

з масиву артіклс кількість записів що рівна найбільшому ід ?



Прихований текст
$config['base_url'] = base_url().'index.php/blog/index/';
                    $config['total_rows'] = '9';
                    $config['per_page'] = '6'; 


                                $config['full_tag_open'] = "<ul class='pagination'>";
                        $config['full_tag_close'] ="</ul>";
                        $config['num_tag_open'] = '<li>';
                        $config['num_tag_close'] = '</li>';
                        $config['cur_tag_open'] = "<li class='disabled'><li class='active'><a href='#'>";
                        $config['cur_tag_close'] = "<span class='sr-only'></span></a></li>";
                        $config['next_tag_open'] = "<li>";
                        $config['next_tagl_close'] = "</li>";
                        $config['prev_tag_open'] = "<li>";
                        $config['prev_tagl_close'] = "</li>";
                        $config['first_tag_open'] = "<li>";
                        $config['first_tagl_close'] = "</li>";
                        $config['last_tag_open'] = "<li>";
                        $config['last_tagl_close'] = "</li>";


                    

                    $this->pagination->initialize($config); 



                    $this->load->model('blog_model');
                    $data['articles'] = $this->blog_model->get_news($config['per_page'],$this->uri->segment(3));


Рішення :
В конфігі котроллера для пегінейшн додати


$this->load->model('blog_model');
$config['total_rows'] = count($this->blog_model->countNews());

Фунція в моделі блог_модел

function countNews() 
                {
                $query = $this->db->query("SELECT * FROM `news` " );
                return $query->result();
                }

Re: Pagination codeignitor просто , але складно . [Вирішено]

В мене колись була аналогічна проблема.
Одного разу мені вдалося її вирішити, підправивши щось у коді(а що саме, вже й не пам`ятаю), а потім я забив і написав свій хелпер для того.

3

Re: Pagination codeignitor просто , але складно . [Вирішено]

А приблизно  ?

4

Re: Pagination codeignitor просто , але складно . [Вирішено]

Не можу в’їхати як можна реалізувати

Прихований текст

http://webaurum.blogspot.com/2012/09/co … ation.html

Перед использованием пейджинга нужно сделать выборку элементов, которые вы хотите разбивать по страницам, точнее нужно знать общее количество элементов. Объявить и инициализировать переменную $total, в которую положить count() записей. В противном случае класс Pagination не будет правильно инициализирован.

5

Re: Pagination codeignitor просто , але складно . [Вирішено]

Вирішено.