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

yipeiwu_com5年前PHP代码库

本文实例讲述了php获取文章上一页与下一页的方法。分享给大家供大家参考。具体方法如下:

今天发现一个站的上一页与下一页出现问题,上一页没有问题但是在下一页是直接到了本频道最新发布的文章了,按原理应该是文章本身ID的前与后的ID才是上下页吧,下面我来与大家详细讲述一下.

先看个例子:1,2,3,4,5.

假如上面5个是ID了,我要对上一页排序直接使用order by id desc,如我当前ID为3那么出来的是2才对,对下一页我们要用order by id asc得出的排序应该是,4,好了原理就这么简.

sql实现方法,代码如下:

上一页:

复制代码 代码如下:
$sql ="Select 字段 from 表名 where id<3 order by id desc limit 1";

下一页:

复制代码 代码如下:
$sql ="Select 字段 from 表名 where id>3 order by id asc limit 1";

得出的结果与我们想的是一样的,好了最后我把自己以前写的一个函数分享给各位,代码如下:

复制代码 代码如下:
/*
 上一页,下一页
 int $tag 0上一页,1下一页
 int $fid
*/
 function nextPre($tag=0,$zid,$fid)
 {
  if( $tag )
  {
   $sql ="Select 字段 from 表名 where id<$fid order by id desc limit 1";
  }
  else
  {
   $sql ="Select 字段 from 表名 where id>$fid order by id asc limit 1";
  }
  //$sql = "Select * from 表名 where order by id desc limit 0,10";
  $result =  mysql_query($sql) or die('query error');
  if( mysql_num_rows( $result ) )
  {
   $rs = mysql_fetch_array( $result );
   return "<a href="".$rs['s_url']."">".$rs['title']."</a>";
  }
  else
  {
   return '没有了';
  }
 }

希望本文所述对大家的PHP程序设计有所帮助。

相关文章

php cout&amp;lt;&amp;lt;的一点看法

即整数与小数的位数之和不应该超过6位,如果小数部分过长,那么系统将按四舍五入法来近似成6位,如果整数部分过长,那么也近似成为6位例如: cout<<123.4567 结果是1...

php使用date和strtotime函数输出指定日期的方法

本文实例讲述了php使用date和strtotime函数输出指定日期的方法。分享给大家供大家参考。具体方法分析如下: 在php中date和strtotime函数都是对日期操作的,但是在生...

遭遇php的in_array低性能问题

遭遇php的in_array低性能问题

PHP的性能一直在提高。然而,若是用的不恰当,或是一个不留神,还是可能会踩到PHP内部实现方面的坑的。我在前几天的一个性能问题上就碰到了。 事情是这样子的,一位同事反馈我们的一个接口每次...

php自定义urlencode,urldecode函数实例

本文实例讲述了php自定义urlencode,urldecode函数。分享给大家供大家参考。具体如下: //配合JavaScript的ajaxObject函数, 对字串进行转码. f...

PHP获取对象属性的三种方法实例分析

本文实例讲述了PHP获取对象属性的三种方法。分享给大家供大家参考,具体如下: 今天查看yii源码,发现yii\base\Model中的attribute()方法是通过反射获取对象的pub...