我们使用分页进行搜索但是它仅在第一页上工作,当我点击分页的第二页时它不起作用。我试图通过创建搜索关键字的会话来解决这个问题但是无法正常工作。 请为此提供良好的解决方案。
控制器代码:
function xyz(){
$this->load->library('pagination');
$config['base_url'] = "http://localhost/rainbow/admin/postList/xyz";
$config['per_page'] = 10;
$config['total_rows'] = $this->post_model->list_count();
$config['uri_segment'] = 3;
$config['page_query_string'] = TRUE;
$page = ($this->uri->segment(3)) ? $this->uri->segment(3) : 0;
$this->pagination->initialize($config);
$data['lists']=$this->post_model->listing($config["per_page"], $page);
$this->load->view('includes/header');
$this->load->view('listing/listing_post',$data);
$this->load->view('includes/footer');
}
型号代码:
function search_listing($limit, $start)
{
if(isset($this->input->get('search')))
{
$this->db->like('post_name',$this->input->get('search'))
}
$this->db->limit($limit, $start);
$query=$this->db->get('blog');
return $query->result();
}
我们应用了Temporary DataTable Search Jquery: https://www.datatables.net/examples/
答案 0 :(得分:1)
使用CodeIgniter分页库
$ config ['page_query_string'] = TRUE;
并将搜索元素作为查询字符串传递。
那么您的网址就像: http://localhost/project/controller/function?var=val&var1=val1&per_page=10
你可以得到var,var1和amp;的值。 per_page by:
$这个 - >输入 - >获得( '变种')
$这个 - >输入 - >获得( 'VAR1')
$这 - >输入 - >获得( 'per_page')
答案 1 :(得分:0)
首先将控制器修改为
function xyz()
{
$this->load->library('pagination');
$config['base_url'] = "http://localhost/rainbow/admin/postList/xyz";
$config['per_page'] = 10;
$config['total_rows'] = $this->post_model->list_count();
$config['uri_segment'] = 4;
$config['page_query_string'] = TRUE;
$page = ($this->uri->segment(4)) ? $this->uri->segment(4) : 0;
$this->pagination->initialize($config);
$data['lists']=$this->post_model->listing($config["per_page"], $page);
$this->load->view('includes/header');
$this->load->view('listing/listing_post',$data);
$this->load->view('includes/footer');
}
因为我已经看到你的基本网址,并发现uri segment three是你的控制器函数xyz,因此分页不起作用。