Ett enkelt sidnavigerings script:
'--------------------------------------------------------------------------------
' zPAGE NAVIGATION BAR
'--------------------------------------------------------------------------------
' Written by: PatrikB a.k.a mrWize
' Contact: mrwize@mrwize.nu
' Homepage: [url="http://mrwize.nu"]http://mrwize.nu[/url]
'--------------------------------------------------------------------------------
Sub PageNavigation(nPage, nTotPages)
Dim strScriptName ' AS String
Dim I ' AS Integer
strScriptName = Request.ServerVariables("SCRIPT_NAME")
' If not first page, then show previous
'--------------------------------------
If CInt(nPage) <> 1 Then
Response.Write("<a href=""" & strScriptName & "?" & _
"page=" & nPage - 1 & """>Föregående</a> - ")
End If ' end previous
' loop through total pages and create links
' to all pages in recordset
'------------------------------------------
For I = 1 TO nTotPages
If CInt(I) <> CInt(nPage) Then
Response.Write("<a href=""" & strScriptName & "?" & _
"page=" & I & """>" & I & "</a> ")
Else
Response.Write "<b>[" & I & "]</b> "
End If
Next ' next page
' If Not current page is the last page
' then show next page
'-------------------------------------
If CInt(nPage) <> CInt(nTotPages) Then
Response.Write(" - <a href=""" & strScriptName & "?" & _
"page=" & nPage + 1 & """>Nästa</a>")
End If ' end next page
End Sub
'--------------------------------------------------------------------------------
' END PAGENAVIGATION BAR
'--------------------------------------------------------------------------------
För att kunna använda denna sub så måste ett ADODB.Recordset skapas enligt följande:
' sql-query to grab info from database
'-------------------------------------
strSQL = "SELECT * FROM TABLE_NAME"
' grab records from database
'---------------------------
Set objRS = Server.CreateObject("ADODB.Recordset")
With objRS
.CacheSize = 5
.PageSize = 10
.Open strSQL, objConn, 3, 1
.AbsolutePage = intPage
.PageSize = 10
End With
intCount = objRS.RecordCount
intTotPages = objRS.PageCount
If Not objRS.EOF Then
Do Until objRS.EOF or nRecCount >= objRS.PageSize
Response.Write "<b>" & objRS(0) & "</b><br>"
nRecCount = nRecCount + 1
objRS.MoveNext
Loop
End If
objRS.Close
Set objRS = nothing
Innan man skapar recordsetet på sidan behöver man hämta en QueryString som håller koll på vilken sida besökaren är på. Detta görs enligt nedan:
<font size="1" face="Verdana, Arial, Helvetica, sans-serif">Kod:<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#006666">
intPage = Requet.QueryString("page")
If intPage = "" Then intPage = 1
Nu är det bara en sak kvar att göra .... bestämma vart sidnavigeringen ska ligga på sidan. Sidnavigeringen anropar du så här:
<font size="1" face="Verdana, Arial, Helvetica, sans-serif">Kod:<font size="1" face="Verdana, Arial, Helvetica, sans-serif" color="#006666">
Call PageNavigation(intPage, intTotPages)
Tror att det var allt,
------------------
'*********************
Response.Write("PatrikB")
Response.End
'*********************
[Redigerat av PatrikB den 17 nov 2000]
[Redigerat av PatrikB den 14 dec 2000]