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 相关文章推荐
dedecms系统常用术语汇总
Apr 03 PHP
PHP 类型转换函数intval
Jun 20 PHP
php 5.3.5安装memcache注意事项小结
Apr 12 PHP
用PHP的超级变量$_POST获取HTML表单(HTML Form) 数据
May 07 PHP
PHP explode()函数用法、切分字符串
Oct 03 PHP
php笔记之:初探PHPcms模块开发介绍
Apr 26 PHP
php二维数组排序方法(array_multisort usort)
Dec 25 PHP
ThinkPHP控制器里javascript代码不能执行的解决方法
Nov 22 PHP
php实现按指定大小等比缩放生成上传图片缩略图的方法
Dec 15 PHP
php中get_cfg_var()和ini_get()的用法及区别
Mar 04 PHP
PHP批量删除jQuery操作
Jul 23 PHP
php ajax confirm 删除实例详解
Mar 06 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
造势之举?韩国总统候选人发布《星际争霸》地图
2017/04/22 星际争霸
PHP DataGrid 实现代码
2009/08/12 PHP
PHP 魔术变量和魔术函数详解
2015/02/25 PHP
纯PHP代码实现支付宝批量付款
2015/12/24 PHP
Laravel 5.4向IoC容器中添加自定义类的方法示例
2017/08/15 PHP
PHP INT类型在内存中占字节详解
2019/07/20 PHP
使用js获取地址栏中传递的值
2013/07/02 Javascript
Json和Jsonp理论实例代码详解
2013/11/15 Javascript
同域jQuery(跨)iframe操作DOM(实例讲解)
2013/12/19 Javascript
nodejs修复ipa处理过的png图片
2016/02/17 NodeJs
JavaScript 监控微信浏览器且自带返回按钮时间
2016/11/27 Javascript
基于javascript的Form表单验证
2016/12/29 Javascript
node.js入门教程之querystring模块的使用方法
2017/02/27 Javascript
vue.js之vue-cli脚手架的搭建详解
2017/05/05 Javascript
Webpack执行命令参数详解
2017/06/17 Javascript
JS判断数组那点事
2017/10/10 Javascript
深入理解vue-class-component源码阅读
2019/02/18 Javascript
微信小程序 子级页面返回父级并把子级参数带回父级实现方法
2019/08/22 Javascript
JavaScript ES6 Class类实现原理详解
2020/05/08 Javascript
vue 路由缓存 路由嵌套 路由守卫 监听物理返回操作
2020/08/06 Javascript
[47:02]2018DOTA2亚洲邀请赛3月29日 小组赛B组 VP VS paiN
2018/03/30 DOTA
[59:48]LGD vs IG 2018国际邀请赛小组赛BO2 第一场 8.18
2018/08/19 DOTA
学习python (2)
2006/10/31 Python
Cpy和Python的效率对比
2015/03/20 Python
Python反射的用法实例分析
2018/02/11 Python
Python同步遍历多个列表的示例
2019/02/19 Python
Python requests上传文件实现步骤
2020/09/15 Python
CSS3 animation实现逐帧动画效果
2016/06/02 HTML / CSS
巴西男士胡须和头发护理产品商店:Beard
2017/11/13 全球购物
jurlique茱莉蔻英国官网:澳洲天然护肤品
2018/08/03 全球购物
高校毕业生登记表自我鉴定
2013/11/03 职场文书
信息专业个人的自我评价
2013/12/27 职场文书
护理专业自荐信范文
2014/02/26 职场文书
运动会跳远广播稿5篇
2014/09/17 职场文书
2019年怎样才能撰写出优秀的自荐信
2019/03/25 职场文书
一文搞懂Redis中String数据类型
2022/04/03 Redis