CodeIgniter Pagination Problem


I am using codeigniter and its pagination class. It works perfectly and it looks something like this:

« First < 1 2 3 4 5 > Last »

Here is my code:

$config['base_url'] = base_url().'controlpanel/';
$config['first_link'] = 'First';
$config['total_rows'] = $count;
$config['per_page'] = '3'; 
$data['pagination'] = $this->pagination->create_links();
$this->load->view('controlpanel', $data);

I have this in my routes:

$route['controlpanel/(:num)'] = "controlpanel/index/$1";

However, whenever I get to a differentpage i.e. controlpanel/3 - the number 1 is always bold - it should change to 2 or 3 etc!

Why doesn't it?

When I change the $config['base_url'] to base_url().'controlpanel/page' then does the pagination work correctly by boldening the correct number - but the link 1 points to the URL controlpanel/page which is the wrong page for me as the base is just controlpanel.

Thanks all for any help.

2/24/2010 11:45:50 PM

Accepted Answer

The pagination class should check the second parameter, not the third(default).

Add this to the config array to change this:

$config['uri_segment'] = '2'; 

This won't change anything but be helpful in creating the url needed. change this :

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

to this:

$config['base_url'] = site_url('controlpanel');
2/25/2010 2:12:26 AM

Also dont forget to check out for.. $inboxMessageCount this value set from the controller

$config['total_rows'] = $inboxMessageCount;

If this value set, is less than the limit value, then pagination will not be displayed.

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow