在asp中通过getrows实现数据库记录分页的一段代码

(编辑:jimmy 日期: 2024/11/11 浏览:2)

复制代码 代码如下:<%@ Language = VBSCRIPT %> 
<% Option Explicit %> 
<% 
rem 在asp中通过getrows实现数据库记录分页的一段代码 
  Dim iStart, iOffset 
  iStart = Request("Start") 
  iOffset = Request("Offset") 

  if Not IsNumeric(iStart) or Len(iStart) = 0 then 
    iStart = 0 
  else 
    iStart = CInt(iStart) 
  end if 

  if Not IsNumeric(iOffset) or Len(iOffset) = 0 then 
    iOffset = 30 
  else 
    iOffset = Cint(iOffset) 
  end if 

  Response.Write "Viewing " & iOffset & " records starting at record " & iStart & "<BR>" 

  Dim objConn, objRS 
  Set objConn = Server.CreateObject("ADODB.Connection") 
  'objConn.Open "DSN=MP3" 
dim connstr 
dim db 
db="csnjimageman.mdb" 
connstr="Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & Server.MapPath(""&db&"") 
objconn.Open connstr 

  Set objRS = Server.CreateObject("ADODB.Recordset") 
  objRS.Open "SELECT * FROM imageinfo", objConn 

  Dim aResults 
  aResults = objRS.GetRows 

  objRS.Close 
  Set objRS = Nothing 

  objConn.Close 
  Set objConn = Nothing 


  Dim iRows, iCols, iRowLoop, iColLoop, iStop 
  iRows = UBound(aResults, 2) 
  iCols = UBound(aResults, 1) 

  If iRows > (iOffset + iStart) Then 
    iStop = iOffset + iStart - 1 
  Else 
    iStop = iRows 
  End If 

  For iRowLoop = iStart to iStop 
    For iColLoop = 0 to iCols 
      Response.Write aResults(iColLoop, iRowLoop) & " " 
    Next 
    Response.Write "<BR>" 
  Next   

  Response.Write "<P>" 
  if iStart > 0 then 
    'Show Prev link 
    Response.Write "<A HREF=""GetRows.asp?Start=" & iStart-iOffset & _ 
                   "&Offset=" & iOffset & """>Previous " & iOffset & "</A>" 
  end if 

  if iStop < iRows then 
    'Show Next link 
    Response.Write " <A HREF=""GetRows.asp?Start=" & iStart+iOffset & _ 
                   "&Offset=" & iOffset & """>Next " & iOffset & "</A>" 
  end if 
%>