注册 登录
编程论坛 ASP技术论坛

求助朋友,如何在现有的新闻程序中加上一页及下一页(新闻名)

sunnydesign 发布于 2009-10-22 17:58, 946 次点击
undefined

[ 本帖最后由 sunnydesign 于 2009-10-22 18:01 编辑 ]
15 回复
#2
sunnydesign2009-10-22 17:58
undefined

[ 本帖最后由 sunnydesign 于 2009-10-22 17:59 编辑 ]
#3
aspic2009-10-22 18:18
论坛出问题了~
#4
sunnydesign2009-10-22 18:36
哦     。
#5
sunnydesign2009-10-22 18:36
现在的

function WebContent()
  dim ID
  ID=request.QueryString("ID")
  if ID="" or (not isnumeric(ID)) then
    response.write "<div align='center'>数据读取异常错误</div>"
    exit function
  end if
  dim rs,sql
  set rs = server.createobject("adodb.recordset")
  sql="select * from NwebCn_Products where ViewFlag and ID="&ID
  rs.open sql,conn,1,3
  response.write"<table width='100%' border='0' cellspacing='0' cellpadding='0'>"
  if rs.bof and rs.eof then
    response.write "<tr><td>暂无相关信息</td></tr>"
  else
    if ViewNoRight(rs("GroupID"),rs("Exclusive")) then
      dim BigPicPath
   BigPicPath=HtmlSmallPic(rs("GroupID"),rs("BigPic"),rs("Exclusive"))
     response.write "<tr> <td width='100%' valign='top'><font color='#FF3300'>"&rs("ProductName")&"</font></td>"
    response.write "<tr> <td></td>"  
 
 response.write "<tr><td colspan='2' width='604'>"&rs("Content")&"</td></tr>"
   
 else
      response.write "<tr><td colspan='2'><hr width='100' size='1' noshade='noshade' color='#FF0000'></td></tr>"
    response.write "<tr><td colspan='2'><hr height='30' width='100%' size='1' noshade='noshade' color='#FF0000'><div align='center'><img src='Images/NoRight.jpg'></div></td></tr>"
 end if
 
 
 
    rs("ClickNumber")=rs("ClickNumber")+1
 rs.update     
  end if
  response.write"</table>"
  rs.close
  set rs=nothing
end function
 
 
 
 
网上找的一段  
<%  
set RelationArt = conn.execute("select top 1 id,title from article where id<"&request.querystring("id")&" order by date desc")  
IF RelationArt.eof and relationArt.bof Then  
Response.Write "<font color=red>·上一条:</font>已经没有了<BR> "  
else  
Response.Write "<font color=red>·上一条:</font><a href=""showdm.asp?id=" & RelationArt(0) & """>" & relationArt(1) & "</a><BR>"  
end if  
Set RelationArt=Nothing  
set RelationArt = conn.execute("select top 1 id,title from article where id>"&request.querystring("id")&" order by id")  
IF RelationArt.eof and relationArt.bof Then  
Response.Write "<font color=red>·下一条:</font>已经没有了"  
else  
Response.Write "<font color=red>·下一条:</font><a href=""showdm.asp?id=" & RelationArt(0) & """>" & relationArt(1) & "</a></td>"  
end if  
RelationArt.close  
Set RelationArt=Nothing  
%>
 
只显示:
·
上一条:已经没有了
·下一条:已经没有了
 
实际上是有下一条的
好像不适用,显是不是要改什么字段?
 
 
 
麻烦朋友帮我看下,多谢了,
#6
aspic2009-10-23 08:43
一个大于那个id 一个小于那个id 取top 1
#7
sunnydesign2009-10-23 17:26
undefined
#8
sunnydesign2009-10-23 17:26
undefined
#9
sunnydesign2009-10-23 17:27
undefined
#10
sunnydesign2009-10-23 17:38
hi 我回复不了,怎么回事,老大,能不能帮改下代码呢,以后有机会可以合作哦~ 多谢啊
undefined
#11
sunnydesign2009-10-23 18:43
怎么回事,老大
#12
sunnydesign2009-10-24 18:49
     :)
#13
yms1232009-10-25 11:32
你可以使用ADODB.RecordSet的MoveNext方法比ID进行加减要好得多
request.QueryString("ID")这个是你的新闻编号?
#14
sunnydesign2009-10-25 19:45
回复 13楼 yms123
request.QueryString("ID")
是我的,
要加什么代码呢、
#15
yms1232009-10-26 17:02
<%
'获得上一条新闻
function getPreviousNews(rs,id)
   '循环确定新闻在所有记录中的位置
   Do Until rs.Eof
      If rs("id")=id Then
         Exit Do
      End IF
      rs.MoveNext
   Loop
   IF rs.EOf Then
      '如果没有找到返回上一条没有了
      getPreviousNews="<font color=red>·上一条:</font>已经没有了<BR> "
   Else
      '找到后开始获得上一条
      rs.MovePrevious'让记录集向上移动一条记录
      IF rs.BOF Then
         '如果上一条不存在
         getPreviousNews="<font color=red>·上一条:</font>已经没有了<BR> "  
      Else
         '如果存在显示上一条
         getPreviousNews="<font color=red>·上一条:</font><a href=""showdm.asp?id=" & rs("id") & """>" & rs("title") & "</a><BR>"
      End IF         
   End IF
End Function

'获得下一条新闻
function getNextNews(rs,id)
   Do Until rs.Eof
      If rs("id")=id Then
         Exit Do
      End IF
      rs.MoveNext  
   Loop
   IF rs.EOf Then
      getPreviousNews="<font color=red>·下一条:</font>已经没有了<BR> "  
   Else
      rs.MoveNext'数据库记录集向下移动一条记录
      IF rs.EOF Then'判断下一条是否存在
         getPreviousNews="<font color=red>·下一条:</font>已经没有了<BR> "   
      Else
         getPreviousNews="<font color=red>·下一条:</font><a href=""showdm.asp?id=" & rs("id") & """>" & rs("title") & "</a><BR>"
      End IF         
   End IF  
End Function

'调用代码   
Dim tSql

'创建记录集(注:使用此方法必须这样创建记录集,否则有可能出错误)
set RelationArt = server.createobject("adodb.recordset")
tSql="select id,title from article order by date desc"'调用SQL语句获得数据库的所有新闻。
RelationArt.Open tSql,con,1,3

'调用函数获得上一条
Response.Write getPreviousNews(RelationArt,request.querystring("id"))
RelationArt.MoveFirst'移动记录集到第一条(很关键)   
'调用函数获得下一条
Response.Write getNextNews(RelationArt,request.querystring("id"))
RelationArt.close   
Set RelationArt=Nothing   
%>
#16
sunnydesign2009-10-26 19:56
3q3q
1