在Codeigniter分页中设置当前页面

Below is my code, I don't know why it always keeps 1st page as current page. And that's why NEXT link is also not working. I also tried $config['uri_segment'] = 1; But not working. Where is the problem ?

$data['mukkadam_list'] = $this->get_mukkadam();
$data['from']      = $from;
$data['to']        = $to;
$data['mukkadam']  = $mukkadam;
$url = base_url('Report/teee/'.$from.'/'.$to.'/'.$mukkadam);
$config['base_url']   = $url;
$config['per_page']   = 50;
// Reports is model. 
$config['total_rows'] = $this->Reports->counter($data['from'],$data['to'],$data['mukkadam']);
$config['num_links'] = $config['total_rows']/50;

$this->load->library('pagination');
$this->pagination->initialize($config);

thank you. :)

You need to remember two things whenever you are going to implement pagination in Codeigniter:

First thing Configuration related to page generation which is actually:

    // Loads pagination library
    $this->load->library('pagination');

    // @params $url = your controller + method path
    $config['base_url'] = base_url() . $url;

    // @params $totalRows = Total  result found in query
    $config['total_rows'] = $totalRows;

    // @params $perPage = In your case it is 50
    $config['per_page'] = $perPage;

    // @params $segment = This is what you are missing in your code. Segment is the factor from where system reads which page records need to be shown
    $config['uri_segment'] = $segment;
    $this->pagination->initialize($config);

Second Thing Pagination configuration related to designing part:

$config['full_tag_open'] = '<ul class="pagination  pagination-sm m-t-none m-b-none">';
$config['full_tag_close'] = '</ul>';
$config['prev_link'] = '<i class="fa fa-chevron-left"></i>';
$config['prev_tag_open'] = '<li>';
$config['prev_tag_close'] = '</li>';
$config['next_link'] = '<i class="fa fa-chevron-right"></i>';
$config['next_tag_open'] = '<li>';
$config['next_tag_close'] = '</li>';
$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>';

$config['first_tag_open'] = '<li>';
$config['first_tag_close'] = '</li>';
$config['last_tag_open'] = '<li>';
$config['last_tag_close'] = '</li>';

$config['first_link'] = '<i class="fa fa-chevron-left"></i> <i class="fa fa-chevron-left"></i>';
$config['last_link'] = '<i class="fa fa-chevron-right"></i><i class="fa fa-chevron-right"></i>';
$this->pagination->create_links();

This is the running script which I have been using in my projects. Working fine. You need to check uri_segment you are passing during initialization.

Let me know if you face any issue.

// Select query to count all possible records, and assing it to here
//$count = 

//product pagination
$config['base_url'] = base_url() . 'index.php/report/teee/';
$config['total_rows'] = $count;
$config['per_page'] = 50;
$config['uri_segment'] = 3;
$limit = $config['per_page'];


// Bootstrap Stylings
$config['full_tag_open'] = '<ul class="pagination">';
$config['full_tag_close'] = '</ul>';
$config['first_link'] = false;
$config['last_link'] = false;
$config['first_tag_open'] = '<li>';
$config['first_tag_close'] = '</li>';
$config['prev_link'] = '&laquo';
$config['prev_tag_open'] = '<li class="prev">';
$config['prev_tag_close'] = '</li>';
$config['next_link'] = '&raquo';
$config['next_tag_open'] = '<li>';
$config['next_tag_close'] = '</li>';
$config['last_tag_open'] = '<li>';
$config['last_tag_close'] = '</li>';
$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);

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

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

$data['dataSource'] = $this->Sample_Model->select_query_for_get_data($limit,$page);

Try this -

    $config = array();
    $config["base_url"] = base_url() . "index.php/controller/methods";
    $config["total_rows"] = $this->db->count_all("db_table_name");
    $config["per_page"] = 20;
    $config["uri_segment"] = 3;
    $this->load->library("pagination");
    $this->pagination->initialize($config);

    $page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;
    $data["results"] = $this->db->limit($config["per_page"],$page)->get("db_table_name")->result();
    $data["links"] = $this->pagination->create_links();

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

The view_page.php -

<table class="table-bordered">
<?php foreach($results as $v){?>
<tr>
    <td><?php echo $v->col1; ?></td>
    <td><?php echo $v->col2; ?></td>
</tr>
<?php } ?>
</table>
<?php print_r($links); ?>