上一篇文章和下一篇文章最核心的sql语句如下
上一篇
代码如下 | 复制代码 |
select top 1 Id from [table] where Id < @当前ID order by Id desc |
下一篇
代码如下 | 复制代码 |
select top 1 Id from [table] where Id > @当前ID order by Id |
以后下面不管是asp php jsp asp.net等都可以这样来实现,下面我们介绍asp 和 php做法吧
在news.asp文件中添加如下代码:
代码如下 | 复制代码 |
<% set backrsd=server.CreateObject("Adodb.recordset") sql="select top 1 * from news where id<"&id&" order by id desc" set backrsd=conn.execute(sql) if backrsd.eof then NewTitle4="已经是第一篇" else id2=backrsd("id") NewTitle2=backrsd("title") end If backrsd.close set nextrsd=server.CreateObject("adodb.recordset") NewTitle3="已经是最后一篇 "
|
在<body>中加入如下代码
代码如下 | 复制代码 |
<br>上一篇:<%=NewTitle4%><a href='news.asp?newid=<%=id2%>'><%=NewTitle2%></a> <br>下一篇:<%=NewTitle3%><a href='news.asp?newid=<%=id1%>'><%=NewTitle1%></a> |
php中的用法
代码如下 | 复制代码 |
function nextpage($fid,$tag,$bid){ if('next' ==$tag){ $sql ="select * from gx_news where id<$fid and menu_id='$bid' order by id desc"; }elseif('prev' ==$tag){ $sql ="select * from gx_news where id>$fid and menu_id='$bid' order by id asc"; } $result =mysql_query($sql); if(!mysql_num_rows($result) ){ echo('己经没有了!'); }else{ $rs =mysql_fetch_array($result); echo "<a href=news_page.php?id=".$rs[0].">".$rs['new_title']."</a>"; } } |
调用
代码如下 | 复制代码 |
nextpage($fid,'next',$bid); 下一页 nextpage($fid,'prev',$bid); 上一页 |
好了,我说的核心就是只有二种sql可能实现所有编程语言的上一篇和下一篇的实现方法。
时间: 2024-10-30 12:43:52