最近在学习用php的CI框架写一个自己的CMS,遇到了些问题。 其中一个就是CI分页的时候,我的URL带有其他参数,才能查出我想要的数据。于是我翻遍了谷歌度娘,终于找到了解决办法,和我想的差不多,就贴出了和大家分享下。 首先,设置你的`base_url`,`block`,`create_id`,`has_pass`,`pass_id` 为我的查询条件,表单提交GET方式,根据条件的有无,修改 `base_url` 和查询条件 $config['base_url'] = base_url()."index.php/admin/article/manage?"; if(!empty($_GET['block'])){ $this->db->where('class_id', $_GET['block']); $config['base_url'].="&block=".$_GET['block']; } if(!empty($_GET['create_id'])){ $this->db->where('create_id', $_GET['create_id']); $config['base_url'].="&create_id=".$_GET['create_id']; } if(!empty($_GET['has_pass'])){ $this->db->where('has_pass', $_GET['has_pass']); $config['base_url'].="&has_pass=".$_GET['has_pass']; } if(!empty($_GET['pass_id'])){ $this->db->where('pass_id', $_GET['pass_id']); $config['base_url'].="&pass_id=".$_GET['pass_id']; } 然后开启 `page_query_string`: $config['page_query_string'] = TRUE; 最后出现的URL是这样的: http://localhost/lycms/index.php/admin/article/manage?&block=8&create_id=0&has_pass=1&pagenow=2 `&per_page=2` 是开启 `page_query_string` 后,自动在url后追加的。 OK,就这样搞定了。 还有的同学想在CI输出分页链接的时候加上"共X条记录 N/X页"等字样,其实很简单,只要在CI分页类的文件`system\libraries\Pagination.php` 里添加如下代码即可: $output = '共'.$this->total_rows.'条记录 '.$this->cur_page .'/'.$num_pages.'页 '; 好吧,就这样。