php 上一篇,下一篇文章实现代码与原理说明


Posted in PHP onMay 09, 2010

实现原理:

就是对id对进行order by id desc 或 order by id asc进行排序,然后再判断比当前id> or小于当前文章id的相同栏目的文章。
实例的sql语句如下:

$id就是当面文章的id

select * from news where id<$id order by id desc limit 0,1
select * from news where id>$id order by id desc limit 0,1

--
-- 表的结构 `string_find`
--

CREATE TABLE IF NOT EXISTS `string_find` (
`id` int(4) NOT NULL auto_increment,
`charList` varchar(100) default NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM DEFAULT CHARSET=utf8 AUTO_INCREMENT=7 ;

--
-- 导出表中的数据 `string_find`
--

INSERT INTO `string_find` (`id`, `charList`) VALUES
(1, '三水点靠木'),
(2, 'baidu'),
(5, 'www.baidu.com'),
(6, '3water.com');

好了万事俱备了,下面来看一下操作方法

mysql_connect('localhost','root','root') or die(mysql_error()); 
mysql_select_db('cc'); 
mysql_query("set names 'gbk'"); 
$cid =5;//是你当前文章的编号 
$sql ="select * from string_find where id>$cid order by id desc limit 0,1"; //上一篇文章 
$sql1 ="select * from string_find where id<$cid order by id asc limit 0,1";//下一篇文章 $result = mysql_query( $sql ); 
if( mysql_num_rows( $result ) ) 
{ 
$rs = mysql_fetch_array( $result ); 
echo "上一篇".$rs[0]; 
} 
else 
{ 
echo "没有了"; 
} 
$result1 = mysql_query( $sql1 ); 
if( mysql_num_rows( $result1 ) ) 
{ 
$rs1 = mysql_fetch_array( $result1 ); 
echo "下一篇".$rs1[0]; 
} 
else 
{ 
echo "没有了"; 
}

以下是别的网友写的文章。
由于我希望访客在浏览网页的时候需要看到上一主题,下一主题的标题,所以必定是要在数据库中查询出来的了,可以通过limit限制来取,比如,我的博客是按照ID自动增量的,那么可以通过查找大于或者小于当前ID来取

$UpSQL="SELECT * FROM `blog` WHERE `ID`<$id ORDER BY `ID` DESC LIMIT 0,1";
$DownSQL="SELECT `ID`,`Title` FROM `blog` WHERE `ID`> $id ORDER BY `ID` ASC LIMIT 0,1";

再通过查询,取出数据
如果只是单一的"上一篇","下一篇"那么就没有必要查询了,这样是不必查询了,但也许用户点击之后会看到,这已经是首页了或者这已经是末页了,呵呵

switch($act) { 
case "Up": 
$SQL="SELECT * FROM `blog` WHERE `ID`< $id ORDER BY `ID` DESC LIMIT 0,1"; 
break; 
case 'Down': 
$SQL="SELECT * FROM `blog` WHERE `ID`> $id ORDER BY `ID` ASC LIMIT 0,1"; 
break; 
default : 
$SQL="SELECT * FROM `blog` WHERE `ID`= $id LIMIT 0,1"; 
break; 
}

通过传递一个动作来实现上一主题,下一主题
PHP 相关文章推荐
解析PHP中DIRECTORY_SEPARATOR,PATH_SEPARATOR两个常量的作用
Jun 21 PHP
解析PHP对现有搜索引擎的调用
Jun 25 PHP
ThinkPHP3.1新特性之对Ajax的支持更加完善
Jun 19 PHP
基于PHP的简单采集数据入库程序
Jul 30 PHP
WordPress中查询文章的循环Loop结构及用法分析
Dec 17 PHP
使用PHP实现微信摇一摇周边红包
Jan 04 PHP
PHP数组生成XML格式数据的封装类实例
Nov 10 PHP
php实现保存周期为1天的购物车类
Jul 07 PHP
php nginx 实时输出的简单实现方法
Jan 21 PHP
PHP 获取客户端 IP 地址的方法实例代码
Nov 11 PHP
关于PHP5.6+版本“No input file specified”问题的解决
Dec 11 PHP
laravel数据库查询结果自动转数组修改实例
Feb 27 PHP
php 获取本机外网/公网IP的代码
May 09 #PHP
php 仿Comsenz安装效果代码打包提供下载
May 09 #PHP
php ob_flush,flush在ie中缓冲无效的解决方法
May 09 #PHP
php 各种应用乱码问题的解决方法
May 09 #PHP
php 输出双引号&quot;与单引号'的方法
May 09 #PHP
php for 循环语句使用方法详细说明
May 09 #PHP
php 函数使用方法与函数定义方法
May 09 #PHP
You might like
php自动加载autoload机制示例分享
2014/02/20 PHP
Laravel框架基于ajax和layer.js实现无刷新删除功能示例
2019/01/17 PHP
JavaScript 比较时间大小的代码
2010/04/24 Javascript
如何让页面在打开时自动刷新一次让图片全部显示
2012/12/17 Javascript
现如今最流行的JavaScript代码规范
2014/03/08 Javascript
ie8下修改input的type属性报错的解决方法
2014/09/16 Javascript
jQuery实现Twitter的自动文字补齐特效
2014/11/28 Javascript
javascript中使用new与不使用实例化对象的区别
2015/06/22 Javascript
详解JavaScript编程中正则表达式的使用
2015/10/25 Javascript
jQuery实现带分组数据的Table表头排序实例分析
2015/11/24 Javascript
js html css实现复选框全选与反选
2016/10/09 Javascript
jQuery Checkbox 全选 反选的简单实例
2016/11/29 Javascript
详解堆的javascript实现方法
2016/11/29 Javascript
JavaScript字符串对象
2017/01/14 Javascript
网页中右键功能的实现方法之contextMenu的使用
2017/02/20 Javascript
js图片延迟加载(Lazyload)三种实现方式
2017/03/01 Javascript
vue绑定的点击事件阻止冒泡的实例
2018/02/08 Javascript
在Vue中使用Compass的方法
2018/03/02 Javascript
vue better scroll 无法滚动的解决方法
2018/06/07 Javascript
Vue 实时监听窗口变化 windowresize的两种方法
2018/11/06 Javascript
vue + typescript + video.js实现 流媒体播放 视频监控功能
2019/07/07 Javascript
js使用文档就绪函数动态改变页面内容示例【innerHTML、innerText】
2019/11/07 Javascript
在Python的Django框架中用流响应生成CSV文件的教程
2015/05/02 Python
Python基本语法经典教程
2016/03/11 Python
最近Python有点火? 给你7个学习它的理由!
2017/06/26 Python
python+opencv实现动态物体追踪
2018/01/09 Python
Python实现的文轩网爬虫完整示例
2019/05/16 Python
tensorflow 限制显存大小的实现
2020/02/03 Python
Spartoo比利时:欧洲时尚购物网站
2017/12/06 全球购物
韩国流行时尚女装网站:Dintchina(中文)
2018/07/19 全球购物
白莲教口号
2014/06/18 职场文书
小学社会实践活动总结
2014/07/03 职场文书
村党的群众路线教育实践活动工作总结
2014/10/25 职场文书
保险内勤岗位职责
2015/04/13 职场文书
2015年煤矿安全工作总结
2015/05/23 职场文书
几款流行的HTML5 UI框架比较(小结)
2021/04/08 HTML / CSS