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 相关文章推荐
人尽可用的Windows技巧小贴士之下篇
Mar 22 PHP
PHP 使用header函数设置HTTP头的示例解析 表头
Jun 17 PHP
web server使用php生成web页面的三种方法总结
Oct 28 PHP
codeigniter框架批量插入数据
Jan 09 PHP
yii操作session实例简介
Jul 31 PHP
PHP对象相互引用的内存溢出实例分析
Aug 28 PHP
WordPress中使主题支持小工具以及添加插件启用函数
Dec 22 PHP
Laravel 5.1 on SAE环境开发教程【附项目demo源码】
Oct 09 PHP
PHP实现文件上传下载实例
Oct 18 PHP
PHP常用排序算法实例小结【基本排序,冒泡排序,快速排序,插入排序】
Feb 07 PHP
php生成0~1随机小数的方法(必看)
Apr 05 PHP
PHP 7.1中AES加解密方法mcrypt_module_open()的替换方案
Oct 17 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 的 __FILE__ 常量
2007/01/15 PHP
php.ini中的php-5.2.0配置指令详解
2008/03/27 PHP
Windows7下PHP开发环境安装配置图文方法
2010/05/20 PHP
js限制checkbox勾选的个数以及php获取多个checkbbox的方法深入解析
2013/07/18 PHP
Ajax中的JSON格式与php传输过程全面解析
2017/11/14 PHP
Laravel5.1 框架路由基础详解
2020/01/04 PHP
fromCharCode和charCodeAt 方法
2006/12/27 Javascript
在Javascript操作JSON对象,增加 删除 修改的简单实现
2016/06/02 Javascript
火狐和ie下获取javascript 获取event的方法(推荐)
2016/11/26 Javascript
微信小程序与php 实现微信支付的简单实例
2017/06/23 Javascript
SpringMVC简单整合Angular2的示例
2017/07/31 Javascript
js数组方法reduce经典用法代码分享
2018/01/07 Javascript
基于百度地图api清除指定覆盖物(Overlay)的方法
2018/01/26 Javascript
JavaScript实现页面中录音功能的方法
2019/06/04 Javascript
详解基于原生JS验证表单组件xy-form
2019/08/20 Javascript
JS使用H5实现图片预览功能
2019/09/30 Javascript
解决vue项目input输入框双向绑定数据不实时生效问题
2020/08/05 Javascript
python提取内容关键词的方法
2015/03/16 Python
python获取目录下所有文件的方法
2015/06/01 Python
Python中Collections模块的Counter容器类使用教程
2016/05/31 Python
基于Linux系统中python matplotlib画图的中文显示问题的解决方法
2017/06/15 Python
Numpy 将二维图像矩阵转换为一维向量的方法
2018/06/05 Python
利用Python将每日一句定时推送至微信的实现方法
2018/08/13 Python
Python3 A*寻路算法实现方式
2019/12/24 Python
双向RNN:bidirectional_dynamic_rnn()函数的使用详解
2020/01/20 Python
tensorflow 实现数据类型转换
2020/02/17 Python
Python使用pyenv实现多环境管理
2021/02/05 Python
细说CSS3中box属性中的overflow-x属性和overflow-y属性值的效果
2014/07/21 HTML / CSS
英国豪华针织品牌John Smedley的在线销售商:The Outlet by John Smedley
2018/04/08 全球购物
《老山界》教学反思
2014/04/08 职场文书
献爱心倡议书
2014/04/14 职场文书
2014年团支部工作总结
2014/11/17 职场文书
护林员个人总结
2015/03/04 职场文书
毕业欢送会致辞
2015/07/29 职场文书
pycharm代码删除恢复的方法
2021/06/26 Python
Python OpenCV实现图形检测示例详解
2022/04/08 Python