Då var det dags att skriv en tredje artikel om Paing, men denna gång kommer jag att gå igenom hur man gör en paging (1, 2, 3...) när man jobbar med Access databaser.
Först och främst ska vi hämta alla poster från Access databasen, jag ger ett exempel på kod nedan:
Set Connect = Server.CreateObject("ADODB.Connection")
Connect.Open "Driver={Microsoft Access Driver (*.mdb)};Dbq=" & Server.MapPath("db.mdb") & ";Uid=Admin;Pwd=lösenord"
Set RecSet = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT memUsername FROM tblMembers WHERE memOnline = 1"
RecSet.Open SQL, Connect, 1, 2Nu när vi har hämtat alla poster från databasen db.mdb så är det dags att bestämma hur många poster som ska visas per sida. Vi måste även kontrollera variabeln intPage som vi skapat som håller reda på vilken sida vi befinner oss på.
Dim sida
intPage = Trim(Request.QueryString("p"))
If Not intPage <> "" Then
intPage = 1
End If
RecSet.PageSize = 10
RecSet.AbsolutePage = intPage
Det AbsolutePage gör är att den ställer in rätt sida i pagingen (intPage).
Det gör vi helt enkelt med en While-loop.
While intRow < RecSet.PageSize And Not RecSet.EOF
intRow = intRow + 1
Response.Write(RecSet(0) & "<br />")
RecSet.MoveNext
Wend
Det vi gjorde var relativt enkelt. Vi sa åt den att loopa/skriva ut posterna medan intRow är mindre än antalet poster per sida OCH medan det finns poster kvar att loppa ut. Ganska logiskt eller hur?
intRow är den variabeln som ska hålla koll på hur många poster som loopats ut, den är ju viktig för att loopen ska fungera.
Det är nästan lika enkelt som att loopa ut informationen. Titta på koden nedan så ska jag hjälpa dig att förstå den:
Sådär, den första If-satsen kollar det finns mer än en sida, om det gör det så fortsätter den vidare till loopen som ska helt enkelt loopa ut alla sidor.
Efter det gör vi en kontroll som ser till att om den sidan vi befinner oss på är den samma som numret som just loopats ut så får den två klamrar bredvid, ex. [2]. De andra sidorna blir till länkar.
Kom ihåg att detta är för en Access databas, om du vill använda paging till en MySQL databas så kan du titta på mina två andra artiklar om paging, de handlar just om paging med MySQL.
Skapades: 2007-08-19 23:13:43
Skribent: Shadi
Lästs 2099 gånger
Betyg: 0 (artikeln har endast 1 röster, det krävs minst 5 för ett betyg)
Ingen har kommenterat denna artikel än.