时间:2021-05-26
本文实例讲述了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常见数据库操作技巧汇总》、《PHP数组(Array)操作技巧大全》、《php排序算法总结》、《PHP常用遍历算法与技巧总结》、《PHP数据结构与算法教程》、《php程序设计算法总结》、《PHP数学运算技巧总结》、《php正则表达式用法总结》、《PHP运算与运算符用法总结》及《php字符串(string)用法总结》
希望本文所述对大家PHP程序设计有所帮助。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
WordPress的文章页页有实现上一篇下一篇的功能函数,不过我们想在单页page.php里面实现上一页下一页的功能,previous_post_link()和
Asp解析XML并分页显示,示例源码如下:复制代码代码如下:第一页>最后一页第一页上一页123456下一页>>最后一页第一页上一页下一页>>最后一页效果图(部分
本文实例讲述了php获取文章上一页与下一页的方法。分享给大家供大家参考。具体方法如下:今天发现一个站的上一页与下一页出现问题,上一页没有问题但是在下一页是直接到
复制代码代码如下:首页首页上一页上一页下一页下一页尾页尾页转到第页第页
先来看看DEDECMS默认的TAG列表分页(5.6为例):第1页时:首页上一页123456下一页末页第3页时:首页上一页123456下一页末页分页连接方式和栏目