thinkphp分页
thinkphp默认分页
html代码
<div class="f_r"> {$page} </div>
一:最简单的分页
$m = M('stock_log');
$page = I('get.page');
$order = 'id desc';
$where = ''; $count = $m->where($where)->count();// 查询满足要求的总记录数
$Page = new \Think\Page($count,);// 实例化分页类 传入总记录数和每页显示的记录数(25) $show = $Page->show();// 分页显示输出 $list = $m->where($where)->order($order)->limit($Page->firstRow.','.$Page->listRows)->select();
foreach($list as $k=>$v){
$list[$k]['local_add_time'] = date('Y-H-d H:i:s',$v['add_time']);
}
$this->assign('note',$list);
$this->assign('page',$show);
二,分页样式
if(IS_POST){
$files['depot_id'] = I('post.depot_id') ;
$files['keywords'] = I('post.keywords') ;
} if($files['depot_id']){
$where['depot_id'] = $files['depot_id'];
}
if($files['keywords']){
$where['_string'] = ' (goods_name like "%'.$files['keywords'].'%") OR ( goods_barcode like "%'.$files['keywords'].'") ';
}
$this->assign('files',$files); $m = M('stock_log');
$page = I('get.page');
$order = 'id desc'; $pagesize = ''; $count = $m->where($where)->count();// 查询满足要求的总记录数
$page = new \Think\Page($count,$pagesize);// 实例化分页类 传入总记录数和每页显示的记录数(25)
$page->listRows = $pagesize;
$page->rollPage = '';
$page->lastSuffix=false;
$page->setConfig('header','<li class="rows">共<b>%TOTAL_ROW%</b>条记录 每页<b>%LIST_ROW%</b>条 第<b>%NOW_PAGE%</b>页/共<b>%TOTAL_PAGE%</b>页</li>');
$page->setConfig('prev','上一页');
$page->setConfig('next','下一页');
$page->setConfig('last','末页');
$page->setConfig('first','首页');
$page->setConfig('theme','%FIRST% %UP_PAGE% %LINK_PAGE% %DOWN_PAGE% %END% %HEADER%'); $show = $page->show();// 分页显示输出
$list = $m->where($where)->order($order)->limit($page->firstRow.','.$page->listRows)->select();
foreach($list as $k=>$v){
$list[$k]['local_add_time'] = date('Y-H-d H:i:s',$v['add_time']);
}
$this->assign('note',$list);
$this->assign('page',$show);
三,分页样式,与第二种有一点点差别,有文字输出
if(IS_POST){
$files['depot_id'] = I('post.depot_id') ;
$files['keywords'] = I('post.keywords') ;
} if($files['depot_id']){
$where['depot_id'] = $files['depot_id'];
}
if($files['keywords']){
$where['_string'] = ' (goods_name like "%'.$files['keywords'].'%") OR ( goods_barcode like "%'.$files['keywords'].'") ';
}
$this->assign('files',$files); $m = M('stock_log');
$page = I('get.page');
$order = 'id desc'; $pagesize = ''; $count = $m->where($where)->count();// 查询满足要求的总记录数
$page = new \Think\Page($count,$pagesize);// 实例化分页类 传入总记录数和每页显示的记录数(25)
$page->listRows = $pagesize;
$page->rollPage = ''; $show = $page->show();// 分页显示输出
$list = $m->where($where)->order($order)->limit($page->firstRow.','.$page->listRows)->select();
foreach($list as $k=>$v){
$list[$k]['local_add_time'] = date('Y-H-d H:i:s',$v['add_time']);
}
$this->assign('note',$list);
$this->assign('page',$show);
自己写代码
public function purchase_list($page,$pagesize,$order,$files){
$m = M('purchase');
$link = '';
if($files['depot_id']){
$where['depot_id'] = $files['depot_id'];
$link .= '&depot_id='.$files['depot_id'];
}
if($files['keywords']){
$where['purchase_sn'] = array('like','%'.$files['keywords'].'%');
$link .= '&keywords='.$files['keywords'];
} $count = $m->where($where)->count();
$totalpage = ($count%$pagesize)>?intval(($count/$pagesize))+:$count/$pagesize; $page = empty($page)?:$page;
$firstpage = '';
$prevpage = ($page-)<?:($page-);
$nextpage = ($page+)>$totalpage?$totalpage:($page+);
$lastpage = $totalpage; $url = U('pur/index'); $pages['count'] = $count;
$pages['page'] = $page;
$pages['totalpage'] = $totalpage;
$pages['firstpage'] = $url."?page=".$firstpage.$link;
$pages['prevpage'] = $url."?page=".$prevpage.$link;
$pages['nextpage'] = $url."?page=".$nextpage.$link;
$pages['lastpage'] = $url."?page=".$lastpage.$link; $list = $m->where($where)->page($page,$pagesize)->order('id desc')->select();
// 格式化字段
foreach($list as $k=>$v){
$list[$k]['local_time'] = date('Y-m-d',$v['time']);
$list[$k]['local_total_price'] = local_price($v['total_price']);
} $pur['list'] = $list;
$pur['pages'] = $pages;
$pur['files'] =$files;
return $pur; }
thinkphp分页的更多相关文章
- thinkphp分页实现
以上为我对于thinkphp分页的实现效果,两种方法,一种调用公共函数中的函数方法(参考http://www.cnblogs.com/tianguook/p/4326613.html),一种是在模型中 ...
- ThinkPHP分页使用例子(二十一)
原文:ThinkPHP分页使用例子(二十一) ThinkPHP分页使用 PHP代码: public function fenye(){ $User = M('Leyangjun'); // 实例化Us ...
- ThinkPHP 分页功能梳理
最近在开发一个项目,使用了国内流行的ThinkPHP框架,我之前没怎么用过这个框架,也是临时抱佛脚,用的不怎么样?可能理解不是很深刻,如果有说的不对或不正确的地方,请大家多包涵,多指教. ThinkP ...
- ThinkPHP分页实例
ThinkPHP分页实例 (2014-09-20 15:34:36) 很多人初学thinkphp时,不太熟悉thinkphp的分页使用方法,现在将自己整理的分页方法分享下,有需要的朋友可以看看. ...
- thinkphp 分页类 url 编码处理
在做thinkphp分页的时候 thinkphp 中的分页 有一个小问题 就是 在有form 表单 搜索中文的时候,点击下一页的话 中文会被转换成编码. 如图: 最直接的方法就是 直接修改 thin ...
- ThinkPHP 分页类的使用及退出功能的实现
/* ThinkPHP设置编码统一: 一.数据库设置为utf8_bin 二.HTML页面设置charset=utf-8,而且检查文档编码格式是否是utf-8.phpDesigner8设置方式为“文件- ...
- ThinkPHP分页链接支持数组参数的办法
这几天在用ThinkPHP做系统,搜索页有个数组参数提交 <input class="params_t" name="t[]" type="ch ...
- 打造简单实用的Thinkphp分页样式(Bootstrap版本)
先吐槽一下ThinkPHP3.1版的分页样式,虽然看起来也很简单大方,但是所有的页码全是使用简单的数字,之间的空隙比较小,不大容易点,还有那个“前5页”和“后5页”显得有点多余,因为点击当前显示第一页 ...
- thinkphp分页格式的完全自定义,直接输入数字go到输入数字页
实现分页效果如下: 以下标注红色字体的为重点 找到文件page.class.php在ThinkPHP/Library/Thinkpage.class.php并打开文件,复制函数show,在本文件中 ...
随机推荐
- jquery2源码分析系列
学习jquery的源码对于提高前端的能力很有帮助,下面的系列是我在网上看到的对jquery2的源码的分析.等有时间了好好研究下.我们知道jquery2开始就不支持IE6-8了,从jquery2的源码中 ...
- 强制浏览器使用兼容模式,Web.config,httpProtocol
对于一些政府类的网站,很多支持IE6~8,而不支持使用更高版本浏览器浏览.虽然有些浏览器会自动使用兼容模式,或有些人会手动调整浏览器的兼容模式,但不是每一个人.每一款浏览器都可以做到用兼容模式.所以, ...
- 报表软件JS开发引用HTML DOM的location和document对象
上一次提到,在报表软件FineReport的JavaScript开发中,可以访问并处理的HTML DOM对象有windows.location.document三种.这次就继续介绍后两种,locati ...
- 深入理解Java反射
要想理解反射的原理,首先要了解什么是类型信息.Java让我们在运行时识别对象和类的信息,主要有2种方式:一种是传统的RTTI,它假定我们在编译时已经知道了所有的类型信息:另一种是反射机制,它允许我们在 ...
- HDU 1524 A Chess Game【SG函数】
题意:一个N个点的拓扑图,有M个棋子,两个人轮流操作,每次操作可以把一个点的棋子移动到它的一个后继点上(每个点可以放多个棋子),直到不能操作,问先手是否赢. 思路:DFS求每个点的SG值,没有后继的点 ...
- 转: Protobuf 的 proto3 与 proto2 的区别
Protobuf 的 proto3 与 proto2 的区别 On 2015-07-17 19:16:00 By Soli Protobuf 的 proto3 与 proto2 的区别 这是一 ...
- ubuntu12.04中shell脚本无法使用source的原因及解决方法
现象: shell脚本中source aaa.sh时提示 source: not found 原因: ls -l `which sh` 提示/bin/sh -> dash 这说明是用dash来进 ...
- 以moosefs为例介绍iozone的使用方法
一.编译安装 首先到官网下载iozone的稳定版源码 http://www.iozone.org/ 然后解压编译 tar -vxf iozone3_458.tar cd iozone3_458/src ...
- PhpStorm XDebug 远程调试
现在我们自己公司的各种开发和测试服务器,都是使用阿里云的服务器.一些PHP的项目,无法在本地搭建完整的环境,在外网服务器上调试更方便定位问题.发现网上没有完整的关于如何配置PHPStorm和XDebu ...
- 反射在ADO.NET中的运用(你还在每个项目中循环遍历DataTable吗)
图片有点大哈,但大更能说明问题.您是不是每个项目都在重复的做图片中的事情-----循环把数据库中返回的表转化为实体对象.是不是每次都在抱怨这样的重复工作.字段越多抱怨越多!不用抱怨了.当你看到这篇文章 ...