分页问题
本帖最后由 meiye451960 于 2012-5-9 16:22 编辑我按照CI手册去做分页
当$config['use_page_numbers'] = FALSE时 分页很正常,跳转正确。
但我不喜欢 index/10 index/20 这种分页方式,想要index/1 index/2这种分布方式
于是我修改一下,$config['use_page_numbers'] = TRUE,跳转正确
但是我发现列表不对
第一页 显示
第二页 显示
第三页 显示
这有问题,找不到问题所在,请大佬看一下,谢谢
代码如下:
$limit = 10;
$config['base_url'] = site_url('admin/admin_post/index');
$config['total_rows'] = $this->Admin_post_model->table_rows();
$config['per_page'] = $limit;
$config['num_links'] = 5;
$config['first_link'] = '<span style="font-size:12px;">首页</span>';
$config['last_link'] = '<span style="font-size:12px;">尾页</span>';
$config['prev_link'] = '<span style="font-size:12px;">上一页</span>';
$config['next_link'] = '<span style="font-size:12px;">下一页</span>';
$config['cur_tag_open'] = '<span style="font-size:18px;">';
$config['cur_tag_close'] = '</span>';
$config['num_tag_open'] = '<span style="font-size:14px;">';
$config['num_tag_close'] = '</span>';
$config['uri_segment'] = 4;
$config['use_page_numbers'] = TRUE;
$this->pagination->initialize($config);
->limit($per_page,($p-1)*$per_page){:1_1:} 太尉天上飞 发表于 2012-5-9 14:25 static/image/common/back.gif
->limit($per_page,($p-1)*$per_page)
不理解,请写具体代码,谢谢 具体如何分页需要你自己去查询数据库,分页类只关心如何显示“页码”。
你肯定是直接拿 segment 中的页数查询数据库了,因为原来是偏移量,可以直接放到 sql 里,而后来变成页数了,如果还放到 sql 那肯定就不行了呀。
楼上的方法是对的。 Hex 发表于 2012-5-9 17:32 static/image/common/back.gif
具体如何分页需要你自己去查询数据库,分页类只关心如何显示“页码”。
你肯定是直接拿 segment 中的页数查 ...
谢谢两位LS,是limit问题,没注意
/**
* The pagination config infos
*
* @return array config infos
*/
public function getPaginationConfig()
{
$config['per_page'] = 12; // Max number of items you want shown per page
$config['num_links'] =2; // Number of "digit" links to show before/after the currently viewed page
$config['use_page_numbers'] = TRUE; // Use page number for segment instead of offset
$config['next_link'] = '下一页';
$config['prev_link'] = '上一页';
$config['first_link'] = '首页';
$config['last_link'] = '末页';
$config['uri_segment'] = 4;
$config['cur_tag_open'] = '<span>';
$config['cur_tag_close'] = '</span>';
$config['page_query_string'] = TRUE;
return $config;
}
/**
* 得到分页limit设置值
*/
public function getPageSize($count,$url) {
$paginationInfos= $this->getPaginationConfig();
$page = $this->input->get('page');
$currentPage = isset($page) ? intval($this->input->get('page')) : $page;
$currentPage = max(1, $currentPage);
$pageSize = empty($paginationInfos['per_page']) ? 2 : $paginationInfos['per_page'];
$totalNums = $count;
$paginationInfos['base_url'] = $url;
$paginationInfos['total_rows'] = $totalNums;
$this->pagination->initialize($paginationInfos);
return $currentPage.'|'.$pageSize;
}
$this->urlForward = $this->baseUrl.'/index.php?'.$getUrl;
$searchwhere = $this->S_OnlineLive->getSearchCourseList();
$this->count =$this->D_CourseSvr->getCourseCount(1,$searchwhere);
$result = explode('|',$this->S_OnlineLive->getPageSize($this->count,$this->urlForward));
$currentPage = $result;
$pageSize = $result;
$this->coureRes = $this->S_OnlineLive->getLiveList($currentPage,$pageSize,$searchwhere); //分页显示
$this->pageStr = $this->pagination->create_links();
页面里面 <?php echo $this->pageStr;?> LS的 Hex大神都出来 你有必要这么激动么 =。= {:soso_e100:}太好了 $config['use_page_numbers'] = TRUE;//这样就可以了。
页:
[1]