Avatar billede cass12 Nybegynder
23. december 2004 - 22:45 Der er 1 kommentar og
1 løsning

Skift side for hver 15. post

Hej Eksperter...

Jeg forsøger at opbygge en slags gæstebog, som skal vise et bestemt antal poster pr. side... Men når jeg lægger "side-skift"-koden (rigtigt!?) ind, for jeg dette at vide:
_______________________________________________
Current Recordset does not support bookmarks. This may be a limitation of the provider or of the selected cursortype.
_______________________________________________

Hvad menes der, og hvad kan jeg gøre for at få det til at fungere?

Koden har før virket, så det er meget underligt...
Håber I kan hjælpe mig...
  Vh.
      cass12

Min kode er:

<% response.buffer=true %><html>

<head>
<style type="text/css">
a:link {
    text-decoration: none;
}
a:visited {
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}
a:active {
    text-decoration: none;
}
</style>
</head>

<body link="#000000" vlink="#000000" alink="#000000">
<font face="Verdana"><b>Alle spil/film</b> - Sorteret efter <%=request.querystring("sort")%></font><br>
<font face="verdana" size="1">Sorter efter:
<a href="vis_alle.asp?sort=navn">navn</a> | <a href="vis_alle.asp?sort=kategori">kategori</a> | <a href="vis_alle.asp?sort=type">type</a> | <a href="vis_alle.asp?sort=filtype">filtype</a> | <a href="vis_alle.asp?sort=multiplayer">multiplayer</a> | <a href="vis_alle.asp?sort=antal">antal</a> | <a href="vis_alle.asp?sort=dato">nyeste</a></font><br><br>

<font size="1" face="Verdana">

<%
Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("db/database.mdb")

If request.querystring("sort") = "navn" Then
strSQL = "SELECT * FROM [elements] ORDER BY [navn]"
End If
If request.querystring("sort") = "kategori" Then
strSQL = "SELECT * FROM [elements] ORDER BY [kategori]"
End If
If request.querystring("sort") = "type" Then
strSQL = "SELECT * FROM [elements] ORDER BY [type]"
End If
If request.querystring("sort") = "filtype" Then
strSQL = "SELECT * FROM [elements] ORDER BY [filtype]"
End If
If request.querystring("sort") = "multiplayer" Then
strSQL = "SELECT * FROM [elements] ORDER BY [multiplayer]"
End If
If request.querystring("sort") = "antal" Then
strSQL = "SELECT * FROM [elements] ORDER BY [antal]"
End If
If request.querystring("sort") = "dato" Then
strSQL = "SELECT * FROM [elements] ORDER BY [dato]"
End If

Set rs = myConn.Execute(strSQL)
If Not (rs.BOF Or rs.EOF) Then

nPage = Request("page")
If isNumeric(nPage) = False Or nPage < 1 Then
  nPage = 1
End If

Set rs = myConn.Execute(strSQL)
If Not (rs.BOF Or rs.EOF) Then

  rs.PageSize = 10
  rs.AbsolutePage = nPage
  nRecCount = rs.PageSize
  nPageCount = rs.PageCount

  Response.Write "Side " & nPage & " af " & nPageCount & "<br>"

If NOT nPageCount = 0 Then
Response.Write "Gå til side "
For nNum = 1 To nPageCount
  Response.Write "<a href='vis_alle.asp?page=" & nNum & "&sort=" & request.querystring("sort") &"'>" & nNum & "</a>"
Next

Response.Write ""
If Clng(nPage) > 1 Then
  Response.Write "<a href='vis_alle.asp?page=" & nPage - 1 & "&sort=" & request.querystring("sort") &"'>&lt;&lt;</a>"
Else
  Response.Write "&lt;&lt;"
End If

Response.Write "&nbsp;"

If Clng(nPage) < Clng(nPageCount) Then
  Response.Write "<a href='vis_alle.asp?page=" & nPage + 1 & "&sort=" & request.querystring("sort") &"'>&gt;&gt;</a>"
Else
  Response.Write "&gt;&gt;"
End If

End If

noCols=0
    maxAntalCols=3
    response.write "<table align='left' width='100%'>"
    Do While Not RS.EOF And nRecCount > 0
      if noCols=0 then Response.Write "<tr>"
      response.write "<td valign='top'>" %>
<table align="left" width="100%" border="0" cellspacing="0" cellpadding="0">
<tr><td align="center" valign="top">
<font face="Verdana" size="2">Besøg: <%=rs("antal")%><br>Type: <%=rs("type")%><br><b><%=rs("navn")%></b>, <%=rs("kategori")%><br>
<a href="spilprofil.asp?id=<%=rs("id")%>"><img width="100px" height="100" src="<%=rs("picture")%>"></a><br><br></font>
</td></tr>
</table>
<%
    noCols=noCols+1
    nRecCount = nRecCount - 1
    response.write "</td>"
    if noCols=maxAntalCols then
      response.write "</tr>"
      noCols=0
    End If
    rs.MoveNext
    Loop
    if noCols>0 then Response.write "</tr>"
    response.write "</table>"
    Else
    ' Hvis der ikke er skrevet noget
    Response.Write "Der er endnu ingen spil/film!"
End If
End If

myConn.Close
Set Conn = Nothing
%>

</font>

</body>

</html>
Avatar billede ellebaek Nybegynder
27. december 2004 - 23:33 #1
når du laver paging skal du benytte recordsets..

Du kan gøre det på denne måde:

<% response.buffer=true %><html>

<head>
<style type="text/css">
a:link {
    text-decoration: none;
}
a:visited {
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}
a:active {
    text-decoration: none;
}
</style>
</head>

<body link="#000000" vlink="#000000" alink="#000000">
<font face="Verdana"><b>Alle spil/film</b> - Sorteret efter <%=request.querystring("sort")%></font><br>
<font face="verdana" size="1">Sorter efter:
<a href="vis_alle.asp?sort=navn">navn</a> | <a href="vis_alle.asp?sort=kategori">kategori</a> | <a href="vis_alle.asp?sort=type">type</a> | <a href="vis_alle.asp?sort=filtype">filtype</a> | <a href="vis_alle.asp?sort=multiplayer">multiplayer</a> | <a href="vis_alle.asp?sort=antal">antal</a> | <a href="vis_alle.asp?sort=dato">nyeste</a></font><br><br>

<font size="1" face="Verdana">

<%
Set myConn = Server.CreateObject("ADODB.Connection")
myConn.Open "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("db/database.mdb")
set rs = Server.createObject("adodb.Recordset")

If request.querystring("sort") = "navn" Then
strSQL = "SELECT * FROM [elements] ORDER BY [navn]"
End If
If request.querystring("sort") = "kategori" Then
strSQL = "SELECT * FROM [elements] ORDER BY [kategori]"
End If
If request.querystring("sort") = "type" Then
strSQL = "SELECT * FROM [elements] ORDER BY [type]"
End If
If request.querystring("sort") = "filtype" Then
strSQL = "SELECT * FROM [elements] ORDER BY [filtype]"
End If
If request.querystring("sort") = "multiplayer" Then
strSQL = "SELECT * FROM [elements] ORDER BY [multiplayer]"
End If
If request.querystring("sort") = "antal" Then
strSQL = "SELECT * FROM [elements] ORDER BY [antal]"
End If
If request.querystring("sort") = "dato" Then
strSQL = "SELECT * FROM [elements] ORDER BY [dato]"
End If

rs.open strSQL, myConn, 1
If Not (rs.BOF Or rs.EOF) Then

nPage = Request("page")
If isNumeric(nPage) = False Or nPage < 1 Then
  nPage = 1
End If

Set rs = myConn.Execute(strSQL)
If Not (rs.BOF Or rs.EOF) Then

  rs.PageSize = 15
  rs.AbsolutePage = nPage
  nRecCount = rs.PageSize
  nPageCount = rs.PageCount

  Response.Write "Side " & nPage & " af " & nPageCount & "<br>"

If NOT nPageCount = 0 Then
Response.Write "Gå til side "
For nNum = 1 To nPageCount
  Response.Write "<a href='vis_alle.asp?page=" & nNum & "&sort=" & request.querystring("sort") &"'>" & nNum & "</a>"
Next

Response.Write ""
If Clng(nPage) > 1 Then
  Response.Write "<a href='vis_alle.asp?page=" & nPage - 1 & "&sort=" & request.querystring("sort") &"'>&lt;&lt;</a>"
Else
  Response.Write "&lt;&lt;"
End If

Response.Write "&nbsp;"

If Clng(nPage) < Clng(nPageCount) Then
  Response.Write "<a href='vis_alle.asp?page=" & nPage + 1 & "&sort=" & request.querystring("sort") &"'>&gt;&gt;</a>"
Else
  Response.Write "&gt;&gt;"
End If

End If

noCols=0
    maxAntalCols=3
    response.write "<table align='left' width='100%'>"
    Do While Not RS.EOF And nRecCount > 0
      if noCols=0 then Response.Write "<tr>"
      response.write "<td valign='top'>" %>
<table align="left" width="100%" border="0" cellspacing="0" cellpadding="0">
<tr><td align="center" valign="top">
<font face="Verdana" size="2">Besøg: <%=rs("antal")%><br>Type: <%=rs("type")%><br><b><%=rs("navn")%></b>, <%=rs("kategori")%><br>
<a href="spilprofil.asp?id=<%=rs("id")%>"><img width="100px" height="100" src="<%=rs("picture")%>"></a><br><br></font>
</td></tr>
</table>
<%
    noCols=noCols+1
    nRecCount = nRecCount - 1
    response.write "</td>"
    if noCols=maxAntalCols then
      response.write "</tr>"
      noCols=0
    End If
    rs.MoveNext
    Loop
    if noCols>0 then Response.write "</tr>"
    response.write "</table>"
    Else
    ' Hvis der ikke er skrevet noget
    Response.Write "Der er endnu ingen spil/film!"
End If
End If

myConn.Close
Set Conn = Nothing
%>

</font>

</body>

</html>

det plejer at virke for mig...
Avatar billede ellebaek Nybegynder
29. december 2004 - 01:04 #2
hov...

lige en fejl..
slet denne linie: Set rs = myConn.Execute(strSQL)
så virker det..!
Avatar billede Ny bruger Nybegynder

Din løsning...

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.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester