thinkphp实现上一篇与下一篇的方法_php实例

本文实例讲述了thinkphp实现上一篇与下一篇的方法。分享给大家供大家参考。具体实现方法如下:

方法一:

复制代码 代码如下:

//上一篇 
$front=$Article->where("id<".$id)->order('id desc')->limit('1')->find(); 
$this->assign('front',$front); 
//下一篇 
$after=$Article->where("id>".$id)->order('id desc')->limit('1')->find(); 
$this->assign('after',$after);

方法二:

复制代码 代码如下:

//上一篇 
$front=$Classroom->where("nid<".$nid)->order('nid desc')->limit('1')->find(); 
$f=!$front?'没有了':'.__URL__.'/nid/'.$front['nid'].'">'.$front['title'].''; 
$this->assign('front',$f); 
//下一篇 
$after=$Classroom->where("nid>".$nid)->order('nid desc')->limit('1')->find(); 
$a=!$after?'没有了':'.__URL__.'/nid/'.$after['nid'].'">'.$after['title'].''; 
$this->assign('after',$a);

更多关于thinkPHP相关内容感兴趣的读者可查看本站专题:《ThinkPHP入门教程》及《ThinkPHP常用方法总结》

希望本文所述对大家基于ThinkPHP框架的PHP程序设计有所帮助。

时间: 2024-09-20 22:06:47

thinkphp实现上一篇与下一篇的方法_php实例的相关文章

php获取文章上一页与下一页的方法_php技巧

本文实例讲述了php获取文章上一页与下一页的方法.分享给大家供大家参考.具体方法如下: 今天发现一个站的上一页与下一页出现问题,上一页没有问题但是在下一页是直接到了本频道最新发布的文章了,按原理应该是文章本身ID的前与后的ID才是上下页吧,下面我来与大家详细讲述一下. 先看个例子:1,2,3,4,5. 假如上面5个是ID了,我要对上一页排序直接使用order by id desc,如我当前ID为3那么出来的是2才对,对下一页我们要用order by id asc得出的排序应该是,4,好了原理就这

thinkPHP使用post方式查询时分页失效的解决方法_php实例

本文实例讲述了thinkPHP使用post方式查询时分页失效的解决方法.分享给大家供大家参考,具体如下: 昨天晚上一直没有解决的php项目中的bug,就在刚才终于搞定,在这里还需要感谢各位大神给的帮助! 具体问题描述 最近遇到一个非常棘手的问题,也是因为刚入手thinkphp.在做项目的过程中,因为需要非常多的查询条件,如果以get方式提交表单的话,会因为url长度限制而报错,所以必须使用post方式提交表单数据,但是在分页的过程中,遇到了问题,因为thinkphp自带的分页是以a标签的形式,进

ThinkPHP提交表单时默认自动转义的解决方法_php实例

本文实例讲述了ThinkPHP提交表单时默认自动转义的解决方法.分享给大家供大家参考.具体方法如下: 一.问题: 在ThinkPHP中提交表单插入数据的时候,单引号和双引号是会被自动转义的,就是会自动的加上反斜线,但是我不想给单引号和双引号加上反斜线. 在ThinkPHP中提交表单插入数据的时候,单引号和双引号是会被自动转义的,就是会自动的加上反斜线,但是我不想给单引号和双引号加上反斜线,在ThinkPHP中提交表单插入数据的时候,单引号和双引号是会被自动转义的,就是会自动的加上反斜线,但是我不

ThinkPHP公共配置文件与各自项目中配置文件组合的方法_php实例

本文实例讲述了ThinkPHP公共配置文件与各自项目中配置文件组合的方法.分享给大家供大家参考.具体实现方法如下: 在使用ThinkPHP时,在布局目录时,常使用的是单个入口文件对应一个项目目录,但是这样在写配置文件时,在各自的配置文件中,经常会使用重复的配置项,所用这时就会将公共的配置项放在一个公共的目录下. 具体实现方法: 使用配置文件的特性return array();可以在各自项目中的配置文件中这样定义: 复制代码 代码如下: $config = array(''=>'',);然后使用函

Yii+MYSQL锁表防止并发情况下重复数据的方法_php实例

本文实例讲述了Yii+MYSQL锁表防止并发情况下重复数据的方法.分享给大家供大家参考,具体如下: lock table 读锁定 如果一个线程获得在一个表上的read锁,那么该线程和所有其他线程只能从表中读数据,不能进行任何写操作. lock tables user read;//读锁定表 unlock tables;//解锁 lock tables user read local;//本地读锁定表,其他线程的insert未被阻塞,update操作被阻塞 lock table 写锁定 如果一个线

ThinkPHP自定义函数解决模板标签加减运算的方法_php实例

本文实例讲述了ThinkPHP自定义函数解决模板标签加减运算的方法.分享给大家供大家参考.具体如下: 实际项目中,我们经常需要标签变量加减运算的操作.但是,在ThinkPHP中,并不支持模板变量直接运算的操作. 幸运的是,它提供了自定义函数的方法,我们可以利用自定义函数解决: ThinkPHP模板自定义函数语法如下: 格式:{:function(-)} (参考官方帮助文档:http://thinkphp.cn/Manual/196) 利用这个,我们来试做加法和减法. 一.在ThinkPHP中定义

ThinkPHP提示错误Fatal error: Allowed memory size的解决方法_php实例

本文实例讲述了ThinkPHP提示错误Fatal error: Allowed memory size的解决方法.分享给大家供大家参考.具体分析如下: 如果你的ThinkPHP提示你:致命错误(Fatal error: Allowed memory size),根据网上说的提高服务器可使用内存,我觉得都不是好的解决办法.麻烦也没必要.因为这是ThinkPHP本身存在BUG. 错误提示:Fatal error: Allowed memory size of 1073741824 bytes exh

thinkPHP导出csv文件及用表格输出excel的方法_php实例

本文实例讲述了thinkPHP导出csv文件及用表格输出excel的方法.分享给大家供大家参考,具体如下: 1.thinkphp导出csv文件 导出csv文件可能就那几行代码,今天有个问题困扰我好久,就是导出之后出现一些html代码,这个不应该,view里面是空的,controller中最后也没有$this->display(),最后细心看到think_page_trace这样的字样,恍然大悟,是页面的跟踪日志,这个默认是会输出来的.最后在方法后面加了一个exit结束就好了,下面是代码: 1.I

PHP用FTP类上传文件视频等的简单实现方法_php实例

文件1:ftp.php <?php /** * 仿写CodeIgniter的FTP类 * FTP基本操作: * 1) 登陆; connect * 2) 当前目录文件列表; filelist * 3) 目录改变; chgdir * 4) 重命名/移动; rename * 5) 创建文件夹; mkdir * 6) 删除; delete_dir/delete_file * 7) 上传; upload * 8) 下载 download * * @author quanshuidingdang */ cl

PHP用mb_string函数库处理与windows相关中文字符及Win环境下开启PHP Mb_String方法_php实例

PHP用mb_string函数库处理与windows相关中文字符 昨天想批处理以前下载的一堆文件,把文件里的关键内容用正则匹配出来,集中处理.在操作文件时遇到一个问题,就是windows操作系统中的编码问题. 我们都知道windows中(当然是中文版),文件名和文件内容等编码都是gbk,而我们在开发过程中,IDE里的编码则是UTF-8,(这里不讨论为什么等等问题, 只考虑怎么把编码转变成一样的)所以导致我写的UTF-8编码的正则模式字符串中的中文在gbk编码的文件中并不能正确匹配. 一开始,我并