My Controller:-
function all_leads($offset = 0) {
$where = '';
$search['search_status'] = FALSE;
$username = $this->session->userdata('username');
$user_id = $this->extra_functions->get_user_id($username);
$this->load->library('pagination');
$user_type = $this->extra_functions->get_user_type($user_id);
if ($this->input->get('search')) {
$serach_string = $this->input->server('QUERY_STRING');
$config['enable_query_strings'] = TRUE;
$config['suffix'] = '?' . $serach_string;
$search_data = $this->input->get();
$where = $this->lead_model->lead_search_coundtiotn($search_data);
if ($where != NULL) {
$where = $where;
} else {
$where = '';
}
$main_data['search'] = TRUE;
$main_data['search_data'] = $search_data;
}
$num_rows = $this->lead_model->count_leads($user_id, $user_type, $where);
$config['base_url'] = base_url('lead/all_leads');
$config['total_rows'] = $num_rows;
$config['per_page'] = 10;
$config['use_page_numbers'] = TRUE;
$config['full_tag_open'] = '<ul class="pagination">';
$config['full_tag_close'] = '</ul>';
$config['prev_link'] = '«';
$config['prev_tag_open'] = '<li>';
$config['prev_tag_close'] = '</li>';
$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['num_links'] = 5;
$config['first_link'] = 'First';
$config['first_tag_open'] = '<li>';
$config['first_tag_close'] = '</li>';
$config['last_link'] = 'Last';
$config['last_tag_open'] = '<li>';
$config['last_tag_close'] = '</li>';
$config['next_link'] = '»';
$this->pagination->initialize($config);
$main_data['all_leads'] = $this->lead_model->view_leads_sec($config['per_page'], $offset, $search, $user_id, $user_type, $where);
$main_data['totalRecords']=$num_rows;
$this->load->view('crm/leads/all_leads', $main_data);
}
$searchterm =$this->search_resource_model->searchterm_handler($this->input->post('keywords'));
//if serachterm is presnt
if($searchterm)
{
//pagenation code
$offset = ($this->uri->segment(3) != '' ? $this->uri->segment(3): 0);
$config['total_rows']=$this->search_resource_model->total_count($searchterm);
$config['per_page']= 5;
$config['first_url'] = '1';
$config['prev_link'] = 'Prev';
$config['first_link'] = 'First';
$config['last_link'] = 'Last';
$config['base_url']= base_url().'search/search_by_keywords/';
$config['uri_segment'] = 3;
$data["reso_list"] = $this->search_resource_model->serch_with_kw($config["per_page"], $offset,$searchterm);
//total count to display on view page
$data["total_count"]=$config['total_rows'];
//initialize config variable
$this->pagination->initialize($config);
//create link for pagination
$data['paginglinks'] = $this->pagination->create_links();
}
//where in searchterm_handler i am setting session
public function searchterm_handler($searchterm)
{
if($searchterm)
{
$this->session->set_userdata('searchterm', $searchterm);
return $searchterm;
}
elseif($this->session->userdata('searchterm'))
{
$searchterm = $this->session->userdata('searchterm');
return $searchterm;
}
else
{
$searchterm ="";
return $searchterm;
}
}
Use autoload for library in config folder
exp:
$autoload['libraries'] = array('database','session','encrypt','pagination');
This is my pagination style , may be it is useful to you.
My controller:
public function album($id){
$id = $this->uri->segment(3);
$encpt = $this->encrypt->encode('howmuch?');
# fetch records from database
//$this->data['posts'] = $this->Punjabi_Model->fetch_top_album($id);
$config = array();
$config["base_url"] = base_url() . "punjabi_music/album/".$id.'/';
$config["total_rows"] = $this->Punjabi_Model->total_record($id);
$config["per_page"] = 20;
$config["uri_segment"] = 4;
$this->pagination->initialize($config);
$page = ($this->uri->segment(4)) ? $this->uri->segment(4) : 0;
$this->data['posts'] = $this->Punjabi_Model->fetch_top_album($id,$config["per_page"], $page);
$this->data['links'] = $this->pagination->create_links();
$this->middle ='other/punjabi_music/album';
$this->layout();
}