thinkphp实现根据页码从数据中获取数据,并实现分页
来源:互联网 发布:23号端口 编辑:程序博客网 时间:2024/06/15 04:33
发现thinkphp框架中自带分页类Page.class.php
使用也很简单,在控制器中实例化page类,并且调用它的方法,在HTML直接输出变量$pagelist就可以了。
下面附上我自己写的分页代码
一、前端代码
<html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><style>.show_page a{height:32px;width:30px;border:1px solid #DCDCDC;background-color:#F3F2F2;text-decoration:none;text-align:center;cursor:pointer;border-collapse:collapse;font-size:14px;}span{height:32px;width:30px;border:1px solid #DCDCDC;background-color:#F3F2F2;text-align:center;border-collapse:collapse;}span.current,.show_page a:hover{border:1px solid #F3F2F2;background-color:#FFFFFF;}.disable{border:#eee 1px solid;color:#ddd;}</style></head><body>{$page_banner}</body></html>
二、后端代码
//传入页码public function forPage(){$page = I('get.page',1);//初始值为1$allMessages= D('Message')->getAll(0,$page);$allMessages = $this->change($allMessages);$number = D("message")->getcount();$number = ceil($number['number']/1);//向上取整$show_page = 3;//显示页码数$page_offset = ($show_page-1)/2;$page_banner = "<div class='show_page'>";if($page>1){$page_banner .=" <a href='".$_SERVER['PHP_SELF']."?page=".($page-1)."'><</a>";}else{$page_banner .= "<span class='disable'><</span>";}$start = 1;$end = $number;if($number > $show_page){//头部if($page > $page_offset+1){$page_banner .="<span class='disable'>...</span>";}if($page > $page_offset){$start = $page-$page_offset;$end = $number>$page+$page_offset?$page+$page_offset:$number;}else{$start = 1;$end = $number>$show_page?$show_page:$number;}//尾部省略if($page+$page_offset > $number){$start = $start-($page+$page_offset-$end);}}for($i=$start;$i<=$end;$i++){if($i == $page){$page_banner .= "<span class='current'>{$i}</span>";}else{$page_banner .= "<a href='".$_SERVER['PHP_SELF']."?page=".($i)."'>{$i}</a>";}}if($show_page<$number && $page<$number-$page_offset){$page_banner .= "<span class='disable'>...</span>";}if($page < $number){$page_banner .="<a href='".$_SERVER['PHP_SELF']."?page=".($page+1)."'>></a>";}else{$page_banner .= "<span class='disable'>></span>";}$this->assign('number',$number);//总页数$this->assign('page',$page);//当前页$this->assign('page_banner',$page_banner);$this->display();}
三、sql语言
//获取留言(按时间先后顺序排列)public function getAll($page){$where["comment_id"] = 0;//查找所有comment_id为0的数据$allMessages = $this->relation('user')->where($where)->order('time desc')->page("$page,6")->select();if(empty($allMessages)){return array();}return $allMessages;}
0 0
- thinkphp实现根据页码从数据中获取数据,并实现分页
- thinkphp实现根据页码从数据中获取数据,并实现分页
- thinkphp实现数据分页
- 根据ajax发送数据,从servelt中读取xml数据并显示,实现查询、删除和分页
- python 实现分页显示从es中获取的数据
- Thinkphp 实现数据分页显示
- Thinkphp 实现简单数据分页
- JSP实现从mysql读取数据并实现分页功能
- ExtJS中从WebService获取数据保存到本地,填充GridPanel实现静态数据分页
- 网页实现从数据库读取数据并简单分页
- 关于使用HandlerThread获取数据,并实现sqlite分页。
- php从PostgreSQL 数据库检索数据,实现分页显示以及根据条件查找数据
- 使用OPENDATASOURCE 函数,在查询中实现从ACCESS获取数据,并插入SQLSERVER2000表中
- 根据当前页码、总页数,设置页码并实现页码切换功能
- 实现组合查询数据并分页显示
- jquery实现分页页码
- ThinkPHP快速实现数据分页(前端/后端分离)
- PLSQL根据页码及每页大小获取数据
- 转换png + 发现一个很好的做app icns的工具
- Android设计模式之策略(接口interface)
- JAVA重点备忘
- Elasticsearch5常见问题汇总
- IntelliJ 13,pom报错cannot reconnect
- thinkphp实现根据页码从数据中获取数据,并实现分页
- 我的html学习——第四天
- Android数字选择器-NumberPicker
- javaweb的实体标签
- activiti 流程实例设置名称
- 第九章代码
- linux 线程同步
- 关于指针和右左法则练习
- 测量