CodeIgniter框架多条件搜索查询分页功能解决方案

最近在用ci框架写功能的时候,需要用到分页功能,本来寻常的数据结果分页是比较简单的,但是这次写的功能是多条件搜索查询分页,就有点难度了,看官方手册下面评论好多人问,

正常的分页功能例子是这样的:

1 $this->load->library('pagination');
2 
3 $config['base_url'] = 'http://example.com/index.php/test/page/';
4 $config['total_rows'] = 200;
5 $config['per_page'] = 20;
6 
7 $this->pagination->initialize($config);
8 
9 echo $this->pagination->create_links();

多条件搜索查询分页例子:

1 class Monitors extends CI_Controller {
 2 public function warning(){
 3     $config= array();
 4     $config['per_page'] = 15; //每页显示的数据数
 5     $current_page = intval($this->input->get("per_page")); //获取当前分页页码数
 6     
 7  $status=$this->input->get("filter-status",TRUE);
 8  $level=$this->input->get('filter-level',TRUE);
 9  $timestamp=$this->input->get('filter-timestamp',TRUE);
10  $all = $this->monitors_m->getAllData($current_page,$config['per_page'],$status,$timestamp,$level);
11    //这里返回的有总条数和具体的数据,根据自己的情况略加修改即可
12  $data['allevent'] = $all['content'];
13  $config['total_rows']   = $all['count'];//总条数
14     $config['num_links'] = 3;//页码连接数
15  $config['use_page_numbers'] = TRUE; 
16  $config['page_query_strings'] = TRUE;//关键配置
17  $config['base_url'] = base_url().'index.php/monitors/warning?'&filter-status='.$status.'&filter-level='.$level.'&filter-timestamp='.$timestamp;//关键配置
18  $this->load->library('pagination');//加载ci pagination类
19  $this->pagination->initialize($config);
20  $data['page'] = $this->pagination->create_links();//关键代码
21  $this->load->view("monitors_v",$data);
22 }

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值