Avatar billede sorenmt84 Juniormester
10. juli 2001 - 18:37 Der er 12 kommentarer og
1 løsning

Ændre lidt i udtrækket

Jeg bruger følgende udtræk til at hente en tilfældig post i en database, hvor poste rmax. må være 14 dage gammel, problemet er, at der ikke altid er en post som opfylder dette kreterie. Så derfor skal jeg ha\' lavet det sådan, så hvis der ikke er nogen poster skal den skrive \"ingen poster i databasen\" eller sådan noget!

<%
set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"db.mdb\")
set rs = Server.CreateObject(\"ADODB.Recordset\")
rs.Open \"SELECT * FROM diviblad where dato > date()-14\", Conn, 1, 3
randomize
linie = int(rs.RecordCount * rnd)
rs.MoveFirst
rs.Move(linie)
%>
Avatar billede no_doubt Nybegynder
10. juli 2001 - 18:41 #1
else
response write.............
Avatar billede stig3 Mester
10. juli 2001 - 18:41 #2
<%
set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"db.mdb\")
set rs = Server.CreateObject(\"ADODB.Recordset\")
rs.Open \"SELECT * FROM diviblad where dato > date()-14\", Conn, 1, 3
if rs.eof then
  response.write \"Der er ingen poster\"
else
  randomize
  linie = int(rs.RecordCount * rnd)
  rs.MoveFirst
  rs.Move(linie)
end if
%>
Avatar billede sorenmt84 Juniormester
10. juli 2001 - 18:41 #3
Hvor skal det ind???
Avatar billede sorenmt84 Juniormester
10. juli 2001 - 18:43 #4
>> stig3

Nej, den skriver at denne handling kræver en aktuel post!
Avatar billede stig3 Mester
10. juli 2001 - 18:45 #5
hvad så med:
if rs.count = 0 then

Avatar billede sorenmt84 Juniormester
10. juli 2001 - 18:47 #6
Der opstod en Microsoft VBScript-kørselsfejl (0x800A01B6)
Objektet understøtter ikke denne egenskab eller metode: \'count\'
Avatar billede stig3 Mester
10. juli 2001 - 18:59 #7
jeg skyder lidt i blinde, men hvad med:

if isnull(rs) then

eller

if rs=nothing then

eller

if rs=\"\" then
Avatar billede stig3 Mester
10. juli 2001 - 19:03 #8
ellers så prøv lige at udskriv:

response.write rs.state
response.write rs.status
Avatar billede stig3 Mester
10. juli 2001 - 19:07 #9
det sidste var vidst noget sludder...


Der er jo altis

on error goto next

----------------
kode
----------------

if err <> 0 then
  response.write \"Der var ingen poster\"
end if
Avatar billede sorenmt84 Juniormester
10. juli 2001 - 19:09 #10
Gider du prøve at sætte det ind i scriptet
Avatar billede stig3 Mester
10. juli 2001 - 19:18 #11
<%
set Conn = Server.CreateObject(\"ADODB.Connection\")
Conn.Open \"Driver={Microsoft Access Driver (*.mdb)}; DBQ=\" & Server.MapPath(\"db.mdb\")
set rs = Server.CreateObject(\"ADODB.Recordset\")
rs.Open \"SELECT * FROM diviblad where dato > date()-14\", Conn, 1, 3

on error goto next

randomize
linie = int(rs.RecordCount * rnd)
rs.MoveFirst
rs.Move(linie)

if err <> 0 then
  response.write \"Der var ingen poster\"
end if
%>
Avatar billede sorenmt84 Juniormester
10. juli 2001 - 19:28 #12
Der opstod en Microsoft VBScript-kompileringsfejl (0x800A03EA)
Der er en syntaksfejl
/troldhoej/diviblad.asp, line 17, column 14
on error goto next
Avatar billede stig3 Mester
10. juli 2001 - 19:35 #13
On Error Resume Next
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