用户
 找回密码
 入住 CI 中国社区
搜索
查看: 30912|回复: 38
收起左侧

[库 Library] 新版 CodeIgniter 分页类及其用法

  [复制链接]
发表于 2008-4-14 12:35:51 | 显示全部楼层 |阅读模式
我一直使用的分页类这样的,如下图
1.jpg
使用CI自带的分页类感觉不是很舒服,所以就把自己的分页函数进行改进,原分页是由函数构成。
现在由于得放到libraries里边,所以将其改进成类。
还有以前参数是?page=1这样的,现在也进行改变
具体代码见附件


将分页类放置于application/libraries目录下,将其命名为showpage.php

然后在autoload.php里加入这样的代码
PHP复制代码
$autoload['libraries'] = array('database','parser','showPage');
复制代码


这样就可以将分页类设置自动加载


在你的控制器相应方法里这样写:
PHP复制代码
   $pagesize=20;
   $total=$this->db->count_all('blog_list');
   $this->load->model('blog/listpage','list');
   preg_match("/index.php\/.*?\/(\d.*)/",$_SERVER['PHP_SELF'],$tt);
   if($tt){
    $page=$tt[1];
   }
   else{
    $page=1;
   }
   $this->showpage->showPage($total,$pagesize);
   $start=$this->showpage->getStart();
   $data['query']=$this->list->list_page($start,$pagesize);
   foreach($data['query'] as $key=>$value){
    $data['query'][$key]['time']=date("Y-m-d H:i:s",$value['time']);
   }
   $data['page']=$this->showpage->getContent();
   $this->parser->parse('blog/log_list',$data);
复制代码


然后在视图页面,进行解析{page};

对了,可别忘了加载模板解析类哦,还有相关的辅助函数~~

效果如下:
2.jpg

[ 本帖最后由 gwpxjb 于 2008-4-16 14:14 编辑 ]

fenye.rar

914 Bytes, 下载次数: 1080

评分

参与人数 2威望 +10 收起 理由
素颜衬红妆凄美 + 5
Hex + 5 原创内容

查看全部评分

发表于 2008-4-14 13:15:45 | 显示全部楼层
不错
标题太吓人了,呵呵
看了那个类,
应该加上跟多的功能,比如获得前页是多少,获得总共有几页,前一页后一页...
这样更能体现类的优势
发表于 2008-4-14 13:26:37 | 显示全部楼层
感谢分享!加分!转移~~~
发表于 2008-4-16 13:59:11 | 显示全部楼层

感谢分享

正在找CI分页教程呢!
发表于 2009-4-8 11:33:02 | 显示全部楼层
不错。。。拿走了哦。。。。。
发表于 2009-4-9 15:18:51 | 显示全部楼层
感谢分享。 呵呵
发表于 2009-6-8 23:44:37 | 显示全部楼层
太强大了,感谢感谢!
发表于 2009-6-9 16:02:13 | 显示全部楼层
太好了~~一
发表于 2009-7-23 14:15:16 | 显示全部楼层
很好。顶一个。
发表于 2009-7-24 15:53:51 | 显示全部楼层
不错,感谢分享。

本版积分规则