文档章节

关于ThinkPHP2.0 中的Page.class.php

D
 Demolady
发布于 2016/10/18 19:59
字数 362
阅读 7
收藏 0

TP中的分页类有一个BUG:假如说现在有两页的记录,我在每条记录后都做了逻辑删除按钮,当我一条条把第二页的记录删完后,并不会自动跳回第一页。这就说明这个分页类有问题。于是我把从分页类中得到的参数一个个输出看是否合理。这样之后发现 $firstRow 是5而不是0(每页显示条数$pageSize是5),这直接导致了去数据库中获取记录的偏移量出现了偏差。然后我就要去分页类中找为什么它会是5。
    结果发现,当前页在构造方法里有一个初始值,由我们点击的页数 1 2 3...(也就是$_GET['p'])来决定。也就是这个当前页的数值决定了$firstRow的值。在构造方法外,show()这个方法里才根据总页数对当前页进行了限制,但在这个限制之后,$firstRow的值没有再发生变化,导致了结果的错误。所以要进行修改!!!!

    将show()方法中的如下代码剪切到构造方法__construct()里,而且要在给firstRow赋值的上端:

        $this->totalPages = ceil($this->totalRows / $this->listRows); //总页数
        if(!empty($this->totalPages) && $this->nowPage > $this->totalPages) {
            $this->nowPage = $this->totalPages;
        }

    这样,在尾页把所有数据删除不再显示后,能够自动跳回到上一页。

 

© 著作权归作者所有

D
粉丝 0
博文 10
码字总数 2561
作品 0
杭州
后端工程师
私信 提问
关于ThinkPHP的一点小小知识点的补充

1.首先将模板加载到模板引擎中去,然后模板开始解析(优先级是:首先解析内置函数(就是模板引擎的内置函数),然后在解析定义函数(如ThinkPHP内置的U,F函数)),最后再返回到模 板。 如果...

笨小熊
2015/09/23
123
0
设计模式(三)——自动加载

php提供了两种方案来自动载入:autoload()函数和spl系列函数 一、前提约束 1.类文件命名方式采用驼峰写法,且以.class.php做后缀,比如: Page.class.php 2.一个类文件中只写一个类,且这个类的...

宁少爷
2016/04/26
49
0
ThinkPHP学习笔记-分页类Page的用法

ThinkPHP中的Page类在ThinkPHP/Extend/Library/ORG/Util/Page.class.php中,所以使用前要引入Page类: 1 import('ORG.Util.Page'); //Page类的引入 2 $db = M('abc');//实例化数据表abc 3 $wh......

Jceee
2014/03/22
2.6K
0
zswin 1.6.4 发布,社交类博客系统

zswin建站系统! 社交类博客系统!不仅仅是个博客,可以用它来搭建各类系统! 完善的后台就是原zswin后台管理框架,功能完备,适应做各类系统后台,可扩展! 简洁的前台,利用标签和插件可以...

知识zswin
2015/01/07
1K
5
thinkphp简洁、美观、靠谱的分页类

废话不多说先上图预览下;即本博客的分页; 这个分页类是在thinkphp框架内置的分页类的基础上修改而来; 原分页类的一些设计,在实际运用中感觉不是很方便; 1:只有一页内容时不显示分页; ...

白俊遥
2016/03/06
14
0

没有更多内容

加载失败,请刷新页面

加载更多

kubernetes API 访问控制在阿里云容器服务(ACK)上的实践

提起K8s API的访问控制,很多同学应该都会想到RBAC,这是K8s用来做权限控制的方法,但是K8s对API的访问控制却不止于此,今天我们就来简单介绍下K8s的访问控制以及ACK如何利用这套方法提供便捷...

zhaowei121
17分钟前
1
0
从HelloWorld看Knative Serving代码实现

概念先知 官方给出的这几个资源的关系图还是比较清晰的: 1.Service: 自动管理工作负载整个生命周期。负责创建route,configuration以及每个service更新的revision。通过Service可以指定路由流...

迷你芊宝宝
17分钟前
1
0
如何防止http请求数据被篡改

故事的开始,面试官问了我一个问题: 如何防止http请求中数据被篡改? 回答: 1.设置客户端IP黑/白名单 1.1.客户端所有请求,请求到代理服务器(nginx),代理服务器维护黑/白名单的ip,决定是...

太猪-YJ
22分钟前
1
0
好程序员大数据笔记之:Hadoop集群搭建

在学习大数据的过程中,我们接触了很多关于Hadoop的理论和操作性的知识点,尤其在近期学习的Hadoop集群的搭建问题上,小细节,小难点拼频频出现,所以,今天集中总结以下笔记,希望对各位同学...

好程序员IT
28分钟前
1
0
MySql用navcat连接时报错 2509

在8版本以后的MySql默认的加密方式都改为了caching_sha2_password 因此进入mysql的命令行更改加密方式即可 ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER......

lanyu96
30分钟前
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部