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统计二维数组元素个数的方法
Nov 12 PHP
解决Codeigniter不能上传rar和zip压缩包问题
Mar 07 PHP
PHP实现自动对图片进行滚动显示的方法
Mar 12 PHP
php使用标签替换的方式生成静态页面
May 21 PHP
PHP使用Pear发送邮件(Windows环境)
Jan 05 PHP
100行PHP代码实现socks5代理服务器
Apr 28 PHP
PHPExcel笔记, mpdf导出
May 03 PHP
thinkPHP2.1自定义标签库的导入方法详解
Jul 20 PHP
10个值得深思的PHP面试题
Nov 14 PHP
php查找字符串中第一个非0的位置截取
Feb 27 PHP
Laravel 模型使用软删除-左连接查询-表起别名示例
Oct 24 PHP
使用Git实现Laravel项目的自动化部署
Nov 24 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
解决phpmyadmin中文乱码问题。。。
2007/01/18 PHP
PHP的一个完美GIF等比缩放类,附带去除缩放黑背景
2014/04/01 PHP
ThinkPHP中的三大自动简介
2014/08/22 PHP
PHP实现将HTML5中Canvas图像保存到服务器的方法
2014/11/28 PHP
thinkphp命名空间用法实例详解
2015/12/30 PHP
PHP微信红包生成代码分享
2016/10/06 PHP
Laravel jwt 多表(多用户端)验证隔离的实现
2019/12/18 PHP
javascript下function声明一些小结
2007/12/28 Javascript
将string解析为json的几种方式小结
2010/11/11 Javascript
javascript开发技术大全-第1章javascript概述
2011/07/03 Javascript
jQuery中操控hidden、disable等无值属性的方法
2014/01/06 Javascript
js操纵dom生成下拉列表框的方法
2014/02/24 Javascript
一个不错的字符串转码解码函数(自写)
2014/07/31 Javascript
Javascript毫秒数用法实例
2015/02/05 Javascript
深入理解JavaScript中的对象
2015/06/04 Javascript
基于JavaScript实现树形下拉框
2016/08/10 Javascript
微信小程序 canvas API详解及实例代码
2016/10/08 Javascript
文件上传,iframe跨域数据提交的实现
2016/11/18 Javascript
jQuery Pagination分页插件使用方法详解
2017/02/28 Javascript
分享一个精简的vue.js 图片lazyload插件实例
2017/03/13 Javascript
在React 组件中使用Echarts的示例代码
2017/11/08 Javascript
Node.js中的不安全跳转如何防御详解
2018/10/21 Javascript
使用vue-router切换页面时实现设置过渡动画
2019/10/31 Javascript
[10:24]郎朗助力完美“圣”典,天籁交织奏响序曲
2016/12/18 DOTA
Python排序搜索基本算法之希尔排序实例分析
2017/12/09 Python
python3+PyQt5实现自定义分数滑块部件
2018/04/24 Python
Python django框架输入汉字,数字,字符生成二维码实现详解
2019/09/24 Python
python如何随机生成高强度密码
2020/08/19 Python
用python写PDF转换器的实现
2020/10/29 Python
捷克浴室和厨房设备购物网站:SIKO
2018/08/11 全球购物
轻化专业学生实习自我鉴定
2013/09/20 职场文书
大学生毕业的自我鉴定
2013/11/13 职场文书
庆八一活动方案
2014/01/25 职场文书
团结主题班会
2015/08/13 职场文书
财务会计个人原因辞职信
2019/06/21 职场文书
Python 第三方库 openpyxl 的安装过程
2022/12/24 Python