Avatar billede Slettet bruger
29. marts 2004 - 17:43 Der er 9 kommentarer og
1 løsning

Hvad er det lige der går galt?

Jeg har et lille problem med at få paging til at virke i min kode. Jeg fandt en artikel om paging men når jeg sætter det ind i mit script vil det ikke som jeg vil, er der en der vil hjælpe mig med at få det til at virke?

mit scripts kommer ud med denne fejl:

Microsoft VBScript compilation error '800a0400'

Expected statement

/showall.asp, line 90

Wend
^

mit script sersåledes ud:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
    <style>
    td { font-size : 8pt; font-family : Verdana, Arial; text-decoration : none; }
    body { font-size : 8pt; font-family : Verdana, Arial; text-decoration : none; }
    </style>
</head>
<link rel="stylesheet" type="text/css" href="css.asp">
<body>
<%
'Opretter Connection
Set Conn = Server.CreateObject("ADODB.Connection")
Conn.Open "DRIVER={Microsoft Access Driver (*.mdb)};"

'Først skal vi have antallet af poster
Set objRs = Conn.Execute("SELECT COUNT(*) AS records FROM users;")
intRecords = int(objRs("records"))
objRs.Close
Set objRs = Nothing

'Variabler til query´et
intPage = Request.QueryString("page")
if intPage = "" OR not isNumeric(intPage) then
  intPage = int(1)
else
  intPage = int(intPage)
end if
intPageSize = int(5)
intStart = intPage*intPageSize
intStart = intStart-intPageSize
intPages = int(intRecords/intPageSize)+1

Set objRs = Conn.Execute("SELECT * FROM users LIMIT " & intStart & ", " & intPageSize & ";")
 
  if objRs.EOF or objRs.BOF then
    Response.Write "Ingen poster"
  else
    Response.Write "<table border=""1"" cellpadding=""3"">"
      Response.Write "<tr>"
        Response.Write "<td>id</td>"
        Response.Write "<td>Site</td>"
      Response.Write "</tr>"
       
      Do until objRs.EOF
        Response.Write "<tr>"
          Response.Write "<td>" & objRs("id") & "</td>"
          Response.Write "<td><a href=""" & objRs("url") & """>" & objRs("navn") & "</a></td>"
        Response.Write "</tr>"
      objRs.MoveNext
      Loop
    Response.Write "</table>"
  end if

objRs.Close
Set objRs = Nothing

'Udskriver en "sideliste"
For i = 1 to intPages
  if i = intPage then
    Response.Write "" & i & " "
  else
    Response.Write "<a href=""paging.asp?page=" & i & """>"
    Response.Write i
    Response.Write "</a> "
  end if
next

Conn.Close
Set Conn = Nothing
%>
<style>
<!--
fieldset    { border: 1px solid #990000 }
-->
</style>
<fieldset style='padding: 2'>
<legend><FONT FACE="VERDANA" SIZE="2" COLOR="BLACK"><a href='mailto:" <%=rs("email") %>"'><%=rs("name") %></a> - <%=rs("dato") %></FONT>
</legend>
<FONT FACE='VERDANA' SIZE='2'>
<%=rs("comments") %><br>
</FONT></div>
</fieldset>
<br>

  <%
  no = no + 1
  rs.MoveNext
  Wend
  ' Done. Now close the Recordset
  rs.Close
  Set rs = Nothing
%>



</body>
</html>
Avatar billede thesurfer Nybegynder
29. marts 2004 - 17:47 #1
Du kan kun bruge WEND når du bruge WHILE, hvilet du ikke gør :-)
Fjern "wend".
Avatar billede thomas_yde Nybegynder
29. marts 2004 - 17:47 #2
Hvor opretter du et Resultset ved navn rs?
Avatar billede thomas_yde Nybegynder
29. marts 2004 - 17:48 #3
Det nederste du har kan jeg ikke se nogen mening i.
Avatar billede thesurfer Nybegynder
29. marts 2004 - 17:49 #4
Hvordan kan du bruge rs("name"), når du lukker forbindelsen?:

Conn.Close
Set Conn = Nothing
Avatar billede thomas_yde Nybegynder
29. marts 2004 - 17:50 #5
Der bliver slet ikke oprettet noget rs.
Det sidste du har giver ikke mening.

<style>
<!--
fieldset    { border: 1px solid #990000 }
-->
</style>
<fieldset style='padding: 2'>
<legend><FONT FACE="VERDANA" SIZE="2" COLOR="BLACK"><a href='mailto:" <%=rs("email") %>"'><%=rs("name") %></a> - <%=rs("dato") %></FONT>
</legend>
<FONT FACE='VERDANA' SIZE='2'>
<%=rs("comments") %><br>
</FONT></div>
</fieldset>
<br>

  <%
  no = no + 1
  rs.MoveNext
  Wend
  ' Done. Now close the Recordset
  rs.Close
  Set rs = Nothing
%>
Avatar billede Slettet bruger
29. marts 2004 - 17:52 #6
jeg har først at lave det efter dette ex http://activedeveloper.dk/artikler/default.asp?articleid=31
Avatar billede thesurfer Nybegynder
29. marts 2004 - 17:54 #7
thomas_yde> Du har da ret ang "rs" :-)
Den hedder jo "objRs", og bliver lukket meget tidligere..
Avatar billede Slettet bruger
29. marts 2004 - 17:56 #8
jeg skal bruge dette:<style>
<!--
fieldset    { border: 1px solid #990000 }
-->
</style>
<fieldset style='padding: 2'>
<legend><FONT FACE="VERDANA" SIZE="2" COLOR="BLACK"><a href='mailto:" <%=rs("email") %>"'><%=rs("name") %></a> - <%=rs("dato") %></FONT>
</legend>
<FONT FACE='VERDANA' SIZE='2'>
<%=rs("comments") %><br>
</FONT></div>
</fieldset>
<br>
til at hente mine dater frem i på siden :)
Avatar billede thomas_yde Nybegynder
29. marts 2004 - 18:00 #9
Ja men du har ikke et objekt der hedder rs.
og objRs bliver lukket meget tidligere.
Du bliver nødt til at redigere dit style afsnit, for det giver ikke mening at placere det uden for dine løkker.

Det er ikke for at være hård, men sådan er det bare :-)
Avatar billede Slettet bruger
29. marts 2004 - 18:51 #10
Yes så fik jeg det til at virke :)
Det færdige script ser således ud

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">

<html>
<head>
</head>
<link rel="stylesheet" type="text/css" href="css.asp">
<body>
<%
intPage = Request("page")
If isNumeric(intPage) = False Or intPage < 1 Then
  intPage = 1
End If

Set rs = Server.CreateObject("ADODB.RecordSet")
strSQL = "select * from users where vises = True"
strDSN = "DRIVER={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("form.mdb")
rs.Open strSQL, strDSN, 1
If Not (rs.BOF Or rs.EOF) Then
  rs.PageSize = 2
  rs.AbsolutePage = intPage
  intRecCount = rs.PageSize
  intPageCount = rs.PageCount
  Response.Write "<p><b>Side " & intPage & " af " & intPageCount & "</b></p>"
  Do While Not rs.EOF And intRecCount > 0
response.write "<fieldset style='padding: 2'>"
response.write "<legend><FONT FACE='VERDANA' SIZE='2'>Af: <a href='mailto:" & rs("email") & "'>" & rs("name") & "</a>&nbsp;" & rs("dato")  & "</FONT>"
response.write "</legend>"
response.write "<FONT FACE='VERDANA' SIZE='2'>"
response.write rs("comments") &"<br>"
response.write "</FONT></div>"
response.write "</fieldset>"
response.write "<br>"
  intRecCount = intRecCount - 1
  rs.MoveNext
  Loop
End If
rs.Close
Set rs = Nothing

Response.Write "<p>Gå til side "
For intNum = 1 To intPageCount
  Response.Write "<a href=showall.asp?page=" & intNum & ">" & intNum & "</a> "
Next

Response.Write "<p>"
If Clng(intPage) > 1 Then
  Response.Write "<a href=showall.asp?page=" & intPage - 1 & ">&lt;&lt;</a>"
Else
  Response.Write "&lt;&lt;"
End If

Response.Write "&nbsp;"

If Clng(intPage) < Clng(intPageCount) Then
  Response.Write "<a href=showall?page=" & intPage + 1 & ">&gt;&gt;</a> "
Else
  Response.Write "&gt;&gt;"
End If
%>

</body>
</html>
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