tcadieux
01-03-2007, 06:49 PM
Folkz, i'm using the below code to do paging. It works, but I would like to expand it so that there is a First Button, Last Button, Next and Previous...
Plus, if i am say on page 15, it would look like this
12 13 14 15 16 17 18 19
Any ideas?
Dim objConn, objRS, strSQL
set objConn=Server.CreateObject("ADODB.Connection")
objConn.Provider="Microsoft.Jet.OLEDB.4.0"
objConn.Open Server.MapPath("../Access/Units.mdb")
strSQL = "SELECT UnitsID "
strSQL =strSQL & " FROM Units"
'strSQL =strSQL & " tblDesc.DescID = tblGlossary.DescId) INNER JOIN "
'strSQL =strSQL & " tblTerms ON tblGlossary.TermsId = tblTerms.TermsID;"
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.Open strSQL, objConn
Dim aResults
aResults = objRS.GetRows
objRS.Close
Set objRS = Nothing
objConn.Close
Set objConn = Nothing
'<------------- Paging
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 = 10
else
iOffset = Cint(iOffset)
end if
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=""PagingAndGetRows.asp?Start=" & iStart-iOffset & _
"&Offset=" & iOffset & """>Previous " & iOffset & "</A>"
end if
if iStop < iRows then
'Show Next link
Response.Write " <A HREF=""PagingAndGetRows.asp?Start=" & iStart+iOffset & _
"&Offset=" & iOffset & """>Next " & iOffset & "</A>"
end if
Plus, if i am say on page 15, it would look like this
12 13 14 15 16 17 18 19
Any ideas?
Dim objConn, objRS, strSQL
set objConn=Server.CreateObject("ADODB.Connection")
objConn.Provider="Microsoft.Jet.OLEDB.4.0"
objConn.Open Server.MapPath("../Access/Units.mdb")
strSQL = "SELECT UnitsID "
strSQL =strSQL & " FROM Units"
'strSQL =strSQL & " tblDesc.DescID = tblGlossary.DescId) INNER JOIN "
'strSQL =strSQL & " tblTerms ON tblGlossary.TermsId = tblTerms.TermsID;"
Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.Open strSQL, objConn
Dim aResults
aResults = objRS.GetRows
objRS.Close
Set objRS = Nothing
objConn.Close
Set objConn = Nothing
'<------------- Paging
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 = 10
else
iOffset = Cint(iOffset)
end if
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=""PagingAndGetRows.asp?Start=" & iStart-iOffset & _
"&Offset=" & iOffset & """>Previous " & iOffset & "</A>"
end if
if iStop < iRows then
'Show Next link
Response.Write " <A HREF=""PagingAndGetRows.asp?Start=" & iStart+iOffset & _
"&Offset=" & iOffset & """>Next " & iOffset & "</A>"
end if