PHP简单实现上一页下一页功能示例


Posted in PHP onSeptember 14, 2016

本文实例讲述了PHP简单实现上一页下一页功能。分享给大家供大家参考,具体如下:

思路整理:

现在好多人用id的增1和减1实现上一篇和下一篇,但是难道文章ID不会断了吗?所以你要知道上个ID和个ID是多少就OK了。

那怎么解决这个问题呢,很简单!

例子:

假如这篇文章的ID200

<a href="?action=up&id=200">上一篇</a>
<a href="?action=down&id=200">下一篇</a>

如果是实现上一篇就在action=up页面写函数

$id= $_GET['id'];
//上一篇:
$sql= select * from article where id < '.$id.' order by id desc limit 0,1';
$rs= mysql_query($sql);
$row= mysql_fetch_array ($rs);
//下一篇:
$sql= select * from article where id < '.$id.' order by id asc limit 0,1';
$rs= mysql_query($sql);
$row= mysql_fetch_array ($rs);

原理,查询比当前ID小(where id < '.$id.'上一篇)和比当前ID大(where id > '.$id.'下一篇)的1条(limit 0,1)数据,并按降序(desc,上一篇)和升序(asc,下一篇)显示出来,当只取一篇的时候,可以省略降序或升序。

具体实现代码:注需要传递参数

前台在上一篇,下一篇处调用:

<?php
 echo GetPreNext(pre,news,$_REQUEST[catid],$_REQUEST[id]);?>
//显示上一篇下一篇
 function GetPreNext($gtype,$table,$catid,$id){
 $preR=mysql_fetch_array(mysql_query("select * from ".$table." where catid=".$catid." and id<$id order by id desc limit 0,1"));//id比传入id小的最近一条
 $nextR=mysql_fetch_array(mysql_query("select * from ".$table." where catid=".$catid." and id>$id order by id asc limit 0,1"));//id比传入id大的最近一条
  $next = (is_array($nextR) ? " where id={$nextR['id']} " : ' where 1>2 ');
  $pre = (is_array($preR) ? " where id={$preR['id']} " : ' where 1>2 ');
   $query = "Select * from ".$table." ";
      $nextRow =mysql_query($query.$next);
      $preRow = mysql_query($query.$pre);
      if($PreNext=mysql_fetch_array($preRow))
      {
       echo $PreNext['pre'] = "上一篇:<a href='newsshow.php?id=".$preR['id']."&&catid=".$catid."'>".$PreNext['title']."</a> ";
      }
      else
      {
       echo $PreNext['pre'] = "上一篇:没有了 ";
      }
      if($PreNext=mysql_fetch_array($nextRow))
      {
       echo $PreNext['next'] = "下一篇:<a href='newsshow.php?id=".$nextR['id']."&&catid=".$catid."'>".$PreNext['title']."</a> ";
      }
      else
      {
        echo $PreNext['next'] = "下一篇:没有了 ";
      }
}

代码经测试可用

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

PHP 相关文章推荐
在Zeus Web Server中安装PHP语言支持
Oct 09 PHP
使用php重新实现PHP脚本引擎内置函数
Mar 06 PHP
PHP垃圾回收机制简单说明
Jul 22 PHP
php中使用ExcelFileParser处理excel获得数据(可作批量导入到数据库使用)
Aug 21 PHP
php array_push()数组函数:将一个或多个单元压入数组的末尾(入栈)
Jul 12 PHP
PHP代码网站如何防范SQL注入漏洞攻击建议分享
Mar 01 PHP
解析php addslashes()与addclashes()函数的区别和比较
Jun 24 PHP
php绘制一条弧线的方法
Jan 24 PHP
PHP封装的简单连接MongoDB类示例
Feb 13 PHP
thinkPHP5使用Rabc实现权限管理
Aug 28 PHP
laravel高级的Join语法详解以及使用Join多个条件
Oct 16 PHP
PHP autoload使用方法及步骤详解
Sep 05 PHP
PHP自定义函数格式化json数据示例
Sep 14 #PHP
ThinkPHP中session函数详解
Sep 14 #PHP
PHP大神的十大优良习惯
Sep 14 #PHP
thinkPHP的表达式查询用法详解
Sep 14 #PHP
PHP实现对二维数组某个键排序的方法
Sep 14 #PHP
Laravel+jQuery实现AJAX分页效果
Sep 14 #PHP
php+ajax实现带进度条的上传图片功能【附demo源码下载】
Sep 14 #PHP
You might like
如何获得PHP相关资料
2006/10/09 PHP
php合并数组array_merge函数运算符加号与的区别
2008/10/31 PHP
thinkPHP js文件中U方法不被解析问题的解决方法
2016/12/05 PHP
ThinkPHP实现附件上传功能
2017/04/27 PHP
JS截取字符串常用方法整理及使用示例
2013/10/18 Javascript
javascript中undefined与null的区别
2015/08/16 Javascript
jQuery焦点图左右转换效果
2016/12/12 Javascript
node.js 和HTML5开发本地桌面应用程序
2016/12/13 Javascript
利用Vue.js实现checkbox的全选反选效果
2017/01/18 Javascript
基于jQuery封装的分页组件
2017/06/26 jQuery
jQuery+Ajax请求本地数据加载商品列表页并跳转详情页的实现方法
2017/07/12 jQuery
实现图片首尾平滑轮播(JS原生方法—节流)
2017/10/17 Javascript
JavaScript编程设计模式之构造器模式实例分析
2017/10/25 Javascript
详解基于Koa2开发微信二维码扫码支付相关流程
2018/05/16 Javascript
vue如何根据网站路由判断页面主题色详解
2018/11/02 Javascript
JS实现盒子跟着鼠标移动及键盘方向键控制盒子移动效果示例
2019/01/29 Javascript
深入理解基于vue-cli的webpack打包优化实践及探索
2019/10/14 Javascript
JavaScript装箱及拆箱boxing及unBoxing用法解析
2020/06/15 Javascript
swiper实现导航滚动效果
2020/12/13 Javascript
python使用7z解压apk包的方法
2015/04/18 Python
使用Python编写一个最基础的代码解释器的要点解析
2016/07/12 Python
利用python批量修改word文件名的方法示例
2017/10/17 Python
如何在sae中设置django,让sae的工作环境跟本地python环境一致
2017/11/21 Python
python根据文本生成词云图代码实例
2019/11/15 Python
python中如何使用insert函数
2020/01/09 Python
Python PyQt5运行程序把输出信息展示到GUI图形界面上
2020/04/27 Python
matplotlib事件处理基础(事件绑定、事件属性)
2021/02/03 Python
CSS3 文字动画效果
2020/11/12 HTML / CSS
美国在线纱线商店:Darn Good Yarn
2019/03/20 全球购物
奥地利婴儿用品和玩具购物网站:baby-markt.at
2020/01/26 全球购物
Linux内核的同步机制是什么?主要有哪几种内核锁
2013/01/03 面试题
关于中国梦的演讲稿
2014/04/23 职场文书
5.12护士节演讲稿
2014/04/30 职场文书
党的群众路线教育实践活动对照检查材料(个人)
2014/09/24 职场文书
Python中常见的导入方式总结
2021/05/06 Python
JS实现九宫格拼图游戏
2022/06/28 Javascript