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 相关文章推荐
phpfans留言版用到的数据操作类和分页类
Jan 04 PHP
PHP 多维数组排序实现代码
Aug 05 PHP
php自定义函数call_user_func和call_user_func_array详解
Jul 14 PHP
php 去除html标记--strip_tags与htmlspecialchars的区别详解
Jun 26 PHP
php中opendir函数用法实例
Nov 15 PHP
PHP给源代码加密的几种方法汇总(推荐)
Feb 06 PHP
PHP实现转盘抽奖算法分享
Apr 15 PHP
php array_chunk()函数用法与注意事项
Jul 12 PHP
php设计模式之单例模式用法经典示例分析
Sep 20 PHP
解决Laravel自定义类引入和命名空间的问题
Oct 15 PHP
解决thinkPHP 5 nginx 部署时,只跳转首页的问题
Oct 16 PHP
Laravel5.1 框架控制器基础用法实例分析
Jan 04 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 auth_http类库进行身份效验
2009/03/19 PHP
php学习笔记 数组遍历实现代码
2011/06/09 PHP
php7基于递归实现删除空文件夹的方法示例
2017/06/15 PHP
php使用QueryList轻松采集js动态渲染页面方法
2018/09/11 PHP
Yii框架应用组件用法实例分析
2020/05/15 PHP
JavaScript DOM 添加事件
2009/02/14 Javascript
用jQuery技术实现Tab页界面之二
2009/09/21 Javascript
突发奇想的一个jquery插件
2010/11/19 Javascript
基于jquery的从一个页面跳转到另一个页面的指定位置的实现代码(带平滑移动的效果)
2011/05/24 Javascript
JavaScript去除空格的三种方法(正则/传参函数/trim)
2013/02/06 Javascript
两种方法实现文本框输入内容提示消失
2013/03/17 Javascript
前端编码规范(3)JavaScript 开发规范
2017/01/21 Javascript
基于JS实现二维码图片固定在右下角某处并跟随滚动条滚动
2017/02/08 Javascript
Bootstrap实现的经典栅格布局效果实例【附demo源码】
2017/03/30 Javascript
原生JS实现图片无缝滚动方法(附带封装的运动框架)
2017/10/01 Javascript
基于bootstrap写的一点localStorage本地储存
2017/11/21 Javascript
JS设计模式之命令模式概念与用法分析
2018/02/06 Javascript
npm 更改默认全局路径以及国内镜像的方法
2018/05/16 Javascript
JavaScript点击按钮生成4位随机验证码
2021/01/28 Javascript
[44:50]DOTA2上海特级锦标赛B组小组赛#2 VG VS Fnatic第二局
2016/02/26 DOTA
MySQL最常见的操作语句小结
2015/05/07 Python
Python中将字典转换为XML以及相关的命名空间解析
2015/10/15 Python
python脚本实现xls(xlsx)转成csv
2016/04/10 Python
Python实现并行抓取整站40万条房价数据(可更换抓取城市)
2016/12/14 Python
插入排序_Python与PHP的实现版(推荐)
2017/05/11 Python
python Tkinter的图片刷新实例
2019/06/14 Python
Python3 字典dictionary入门基础附实例
2020/02/10 Python
Python 实现打印单词的菱形字符图案
2020/04/12 Python
Django+Django-Celery+Celery的整合实战
2021/01/20 Python
应届生自荐信范文
2014/02/21 职场文书
数控技校生自我鉴定
2014/04/19 职场文书
高三上学期学习自我评价
2014/04/23 职场文书
领导干部群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
汉语拼音教学反思
2016/02/22 职场文书
煤矿安全生产管理协议书
2016/03/22 职场文书
2019年XX公司的晨会制度及流程!
2019/07/23 职场文书