http://example.com/index.php/控制器/方法名/页面的偏移值
页面的偏移值必须是方法名后第一个参数,否者分页类不能判断当前是哪一页,而用ci的分页类进行页面跳转时他是把偏移值加在base_url的最后面。这时如果我在点击页面跳转按钮进行页面跳转时还想带参数呢,像下面这样的话分页类就不能正常工作了。
http://example.com/index.php/控制器/方法名/其它参数1/其它参数2/页面的偏移值
解决方法,在config.php配置文件中把 $config['enable_query_strings'] 设置为 TRUE,传给分页类的config配置数组中也要加一个设置 $config['page_query_string'] = TRUE; 然后我们就能以这查询字符串的方式来跳转页面了。
http://example.com/index.php?c=test&m=page&d1=222&d2=3333&per_page=20
其中的d1和d2是我要传给控制器的别的参数。我们获取这两个参数可以用输入类里的 $this->input->get('d1');
详细代码如下:
function control()
{
$d1=$this->input->get('d1');
if(empty($d1))$d1=0;
$d2=$this->input->get('d2');
if(empty($d2))$d2=0;
$page=$this->input->get('per_page');
if(empty($page))$page=0;
$data = $this->Model->getData($d1,$d2,$page);
$config['base_url'] = base_url().'/index.php?c=adminCenter&m=auditComment&d1='.$d1.'&d2='.$d2;
$config['first_link'] = "首页";
$config['last_link'] = "尾页";
$config['total_rows'] = $data['dataLenght'];
$config['per_page'] = '20';
$config['page_query_string'] = TRUE;
$this->pagination->initialize($config);
$this->load->view('index.html',$data);
}