大连仟亿科技
客服中心
  • 电话
  • 电话咨询:0411-39943997
  • 手机
  • 手机咨询:15840979770
    手机咨询:13889672791
网络营销 >更多
您现在的位置:仟亿科技 > 新闻中心 > 常见问题

网站动态实现文章上翻,下翻功能

作者:billionnet 发布于:2012-2-17 21:47:25 点击量:

 

 前段时间修改一个网站,在文章中实现文章的上翻,下翻功能!不是用那种JS调用的,而是传递ID时,实现上/下翻的功能,起初实现时,只是改变了id,上页id+1,下页id-1,但问题出现了,假如我将当前文章的上篇删除时,这时当前文章的上页就显示为空了!然后,试着又写了sql,大致有二种写法

1:select(select top 1 *   from tablename  where ID>currentID     order by ID desc ) as prev ,

(select top 1 *   from tablename where ID

2:create table #a
(
id int identity(1,1),
a varchar(50)
)

insert into #a(a) values ('abc')
insert into #a(a) values ('abc')
insert into #a(a) values ('abc')

select * from #a

delete t1 from #a t1,
(
select max(id) as id,a from #a  group by a having count(1)>1
) t2 where t1.a=t2.a and t1.id!=t2.id

select * from #a

drop table #a.

 

本来第一种就可以实现的,(后来才测试通过的),不过这是个asp网站,所以改了将近一天,才发现错误,原来少个空格,…………

贴出来吧,分享下:

<%
Set conn=Server.CreateObject("Adodb.Connection")
connstr="provider=Microsoft.JET.OLEDB.4.0;Data Source="&Server.MapPath("/Data/TA_Data.mdb")
conn.open connstr
u1=request("urlid")
set rs=server.CreateObject("adodb.recordset")
sql="select  top 1 * from NewsContent  where TwoNewsClassID=28 and ID>"&u1&" order by ID asc"
rs.open sql,conn,1,3 
 %>

&nbsp;&nbsp;"><%=rs("title") %>

加红色的地方,也就是order前面应该有个空格的!不相的话,删除试试,唉,一个小错误,折腾这么长时间!

 

 

 

更新:加判断,即当下一篇或下一篇没信息时,提示的代码:

 

上篇:

<%
dim u1
Set conn=Server.CreateObject("Adodb.Connection")
connstr="provider=Microsoft.JET.OLEDB.4.0;Data Source="&Server.MapPath("/Data/TA_Data.mdb")
conn.open connstr
u1=request.QueryString("urlid") 
set rs=server.CreateObject("adodb.recordset")
sql="select  top 1 * from NewsContent  where TwoNewsClassID=65 and ID>"&u1&" order by ID asc"
rs.open sql,conn,1,3


If Not rs.EOF Then
    Do While Not rs.EOF
      Response.Write ""&rs("Title")&"
"
      rs.MoveNext
    Loop
  Else
    Response.Write "上一篇暂且没有新闻"
  End If
 %>

下篇:

<%
dim u2
Set conn=Server.CreateObject("Adodb.Connection")
connstr="provider=Microsoft.JET.OLEDB.4.0;Data Source="&Server.MapPath("/Data/TA_Data.mdb")
conn.open connstr
u2=request.QueryString("urlid") 
set rs=server.CreateObject("adodb.recordset")
sql="select  top 1 *  from NewsContent where TwoNewsClassID=65 and ID<"&u2&" order by ID desc"
rs.open sql,conn,1,3

 

If Not rs.EOF Then
    Do While Not rs.EOF
      Response.Write ""&rs("Title")&"
"
      rs.MoveNext
    Loop
  Else
    Response.Write "下一篇暂且没有新闻"
  End If
 %>



分享到:


评论加载中...
内容:
评论者: 验证码:
  

Copyright@ 2011-2016 版权所有:大连仟亿科技有限公司 辽ICP备11013762-1号   google网站地图   百度网站地图   网站地图

公司地址:大连市沙河口区中山路692号辰熙星海国际2317 客服电话:0411-39943997 QQ:2088827823 42286563

法律声明:未经许可,任何模仿本站模板、转载本站内容等行为者,本站保留追究其法律责任的权利! 隐私权政策声明