17. februar 2003 - 15:39Der er
16 kommentarer og 1 løsning
Opdele SQL-kald i sider
Hej, jeg er ved at lave en link-database, og viser så indholdet på en side. Jeg vil gerne kunne begrænse det til f. eks. 20 links per side, så man kan trykke på "næste side" for at komme til links 21 - 40 osv.
Jeg har prøvet med dette:
Dim Conn Set Conn = Server.CreateObject("ADODB.Connection") Conn.Open "DSN=db", "username", "password"
strSQL = "SELECT * FROM links WHERE category='" & request("kat") & "' AND approved='ja' ORDER BY name" Set rs = Conn.Execute(strSQL)
rs.Pagesize = 5 intPage = Request.Querystring("intPage") If isNumeric(intPage) = False Or intPage < 1 Then intPage = 1
rs.AbsolutePage = intpage
End If
If Not (rs.BOF Or rs.EOF) Then Response.Write "<table width='100%' cellspacing='2' cellpadding='0'>" Do While Not rs.EOF' And intRecCount > 0 Response.Write "<tr><td valign=top width='100%' colspan=2 bgcolor=#e5e5e5><font size=2><b><a href=links.asp?mode=id&id=" & rs("id") & ">" & rs("name") & "</a></b></font></td></tr>" Response.Write "<tr><td valign=top width='80%' bgcolor=#efefef><font size=2>" & rs("description") & "</font></a></td>" Response.Write "<td valign=top width='20%' bgcolor=#e5e5e5><font size=2> Hits: " & rs("hits") & "</font></td></tr>" rs.MoveNext Loop End If Response.Write "</table>"
Conn.Close Set Conn = Nothing
Men jeg får en fejl på linien: rs.AbsolutePage = intpage
Jeg får denne fejl:
ADODB.Recordset error '800a0cb3'
Object or provider is not capable of performing requested operation.
Men jeg kan ikke gennemskue hvad der er galt, og hvordan jeg retter det? Eller er der en helt anden måde at gøre det på?
Conn.Open "DSN=db", "username", "password", 1 Er ikke sikker på det, men prøv 1 tallet skulle tillade en cursor der kan bladre frem og tilbage, den er dog ikke "Dynamisk"
Det virker desværre ikke, det er som om den ikke bliver åbnet, for længere nede får jeg en fejl, der siger at operationen ikke kan udføres på et lukket objekt.
denne conn streng skulle virke: Set rs = Server.CreateObject("ADODB.Recordset") rs.CursorType = adOpenStatic rs.Open(Sql), Conn, 1, 3 Hvordan du fletter den sammen med din kode lader jeg dig om!
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.