Почему Codeigniter показывает одинаковые данные на каждой странице, используя нумерацию страниц? - PullRequest
0 голосов
/ 08 сентября 2018

Codeigniter показывает одинаковые данные на каждой странице, используя нумерацию страниц. Я думаю, что проблема в URL сформирована из-за невозможности получить 3-й uri сегмент из url .

http://127.0.0.1/hmvc/business_list/?p=2

и код, который я использовал ...

public function index()
{



    $query = $this->db->query('SELECT * FROM categories');
    $pagination_limit = '10';

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

    $config['display_pages'] = true;
    $config['first_link'] = 'First';

    $config['total_rows'] = $query->num_rows();
    $config['per_page'] = $pagination_limit;
    $config['uri_segment'] = 3;

    $config['full_tag_open'] = "<ul class='pagination pagination-right margin-none'>";
    $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);

    $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;

    $data['results'] = $this->Business_model->fetch_comments_data($config['per_page'], $page);

    $data['links'] = $this->pagination->create_links();

     $data['title'] = "Business List";

    $this->load->view('categories',$data);

}

Пожалуйста, помогите.

Ответы [ 2 ]

0 голосов
/ 08 сентября 2018

Вы должны изменить это:

$page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;

Для

$page = ($this->input->get('p') ? $this->input->get('p') : 0);

Я думаю Сегмент URI-кода не работает в вашем случае, потому что, если ваш URL-адрес такой

http://127.0.0.1/hmvc/business_list/page/2

тогда первый сегмент - business_list, а второй - page, но вы используете строку запроса, поэтому необходимо изменить

0 голосов
/ 08 сентября 2018

Ну, найдите время, чтобы понять, что вы там делаете.

$query = $this->db->query('SELECT * FROM categories');

Похоже, вы не определяете LIMIT и OFFSET .

Я нашел хороший пример о нумерации страниц с кодовым указателем .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...