前段時間修改一個網站,在文章中實現文章的上翻,下翻功能!不是用那種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
insert into #a(a) values ('abc')
select * from #a
delete t1 from #a t1,
select * from #a
drop table #a.
本來第一種就可以實現的,(后來才測試通過的),不過這是個asp網站,所以改了將近一天,才發現錯誤,原來少個空格,…………
貼出來吧,分享下:
<%
(
id int identity(1,1),
a varchar(50)
)
insert into #a(a) values ('abc')
insert into #a(a) values ('abc')
(
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
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
%>
加紅色的地方,也就是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-3號 google網站地圖 百度網站地圖 網站地圖
公司地址:大連市沙河口區中山路692號辰熙星海國際2317 客服電話:0411-39943997 QQ:2088827823 37482752
法律聲明:未經許可,任何模仿本站模板、轉載本站內容等行為者,本站保留追究其法律責任的權利! 隱私權政策聲明