日期:2014-05-17  浏览次数:21012 次

ASP分页代码出错,找了很久找不出来,麻烦有空帮我看一下。
<%
sub WebContent(DataFrom,ID,SortPath)
  '-------------------
  dim rs,sql
  dim HideSort '未对外发布的类别
  set rs = server.createobject("adodb.recordset")
  '根据当前类别ID取需要列表产品的类别路径SortPath开始
  if ID="" then
SortPath="0," 
  elseif not IsNumeric(ID) then%>
  <div class="Bodyer_right_page_content">暂无相关信息</div>
<% exit sub
  elseif conn.execute("select * from "&DataFrom&" Where ID="&ID).eof then%>
  <div class="Bodyer_right_page_content">暂无相关信息</div>
<% exit sub
  else
SortPath=conn.execute("select * from "&DataFrom&" Where ID="&ID)("SortPath")
conn.execute("update "&DataFrom&" set ClickNumber=ClickNumber+1 Where ID="&ID)
  end if
  sql="select * from "&DataFrom&" Where 1<>1 and Instr(SortPath,'"&SortPath&"')>0"
  '根据当前类别ID取需要列表产品的类别路径SortPath结束
  rs.open sql,conn,1,1
  while not rs.eof
HideSort="and not(Instr(SortPath,'"&rs("SortPath")&"')>0) "&HideSort
  rs.movenext
  wend
  rs.close
  '-------------------
  dim idCount'记录总数
dim pages'每页条数
pages=16
dim pagec'总页数
dim page'页码
page=clng(request("Page"))
dim pagenc'每页显示的分页页码数量=pagenc*5+1
pagenc=5
dim pagenmax'每页显示的分页的最大页码
dim pagenmin'每页显示的分页的最小页码
dim pageprevious'上一相邻的页码
dim pagenext '下一相邻的页码
'重置数据表名
  datafrom="evset_Products"
  dim datawhere'数据条件
datawhere="where Instr(SortPath,'"&SortPath&"')>0 "&HideSort& " "
  dim sqlid'本页需要用到的id
  dim Myself,PATH_INFO,QUERY_STRING'本页地址和参数
  PATH_INFO = request.servervariables("PATH_INFO")
QUERY_STRING = request.ServerVariables("QUERY_STRING")'
  if QUERY_STRING = "" then
Myself = PATH_INFO & "?"
elseif Instr(PATH_INFO & "?" & QUERY_STRING,"Page=")=0 then
Myself= PATH_INFO & "?" & QUERY_STRING & "&"
else
Myself = Left(PATH_INFO & "?" & QUERY_STRING,Instr(PATH_INFO & "?" & QUERY_STRING,"Page=")-1)
end if
  dim taxis'排序的语句 asc,desc
  taxis="order by Sequence asc "
  dim i'用于循环的整数
  '获取记录总数
  'sql="select * from evset_Products where Instr(SortPath,'"&SortPath&"')>0 "&HideSort
  sql="select count(ID) as idCount from ["& datafrom &"]" & datawhere
  set rs=server.createobject("adodb.recordset")
  rs.open sql,conn,0,1
  idCount=rs("idCount")
  '获取记录总数
  if(idcount>0) then'如果记录总数=0,则不处理
  if(idcount mod pages=0)then'如果记录总数除以每页条数有余数,则=记录总数/每页条数+1
pagec=int(idcount/pages)'获取总页数
  else
  pagec=int(idcount/pages)+1'获取总页数
  end if
'获取本页需要用到的id============================================
  '读取所有记录的id数值,因为只有id所以速度很快
  sql="select id from ["& datafrom &"] " & datawhere & taxis
  set rs=server.createobject("adodb.recordset")
  rs.open sql,conn,1,1
  rs.pagesize = pages '每页显示记录数
  if page < 1 then p