---
title: "Undantag inträffade..."
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/45690-undantag-inträffade"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "Mika3l"
published: "2002-06-12T11:41:25.000Z"
updated: "2002-06-12T14:31:28.000Z"
replies: 8
views: 247
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/asp/45690-undantag-inträffade"
---

# Undantag inträffade...

## #1 — Mika3l, 2002-06-12T11:41Z

Efter att jag stängt eller öppnat en tråd i ett forum jag gör så ska man skickas vidare till tråden, man skickas vidare men varje gång man kommer dit så får jag ett felmeddelande.

Feltyp:
(0x80020009)
Undantag inträffade. 

If Session("user") = rsCheckModerators("mod1") OR Session("user") = rsCheckModerators("mod2") OR Session("user") = rsCheckModerators("mod3") OR Session("user") = rsCheckModerators("mod4") OR Session("user") = rsCheckModerators("mod5") OR Session("user") = rs("namn") OR typ = "Forumledare" Then

Den här koden fungerar utmärkt annars när man kollar på sidan man inte när man skickas dit efter att ha stängt eller öppnat en tråd. :l
Jag har även testat med att sätta ( och ) runt...

Please help!

/Mika3l

Permalänk: https://www.webforum.nu/p/45690

## #2 — doggelito, 2002-06-12T12:32Z

Du använder access va?
Det blir nog för många anrop till databasen, jag tycker jag känner igen felet, tyvärr!
(men jag kan ha fel förståss) :)

Permalänk: https://www.webforum.nu/p/696424

## #3 — Mika3l, 2002-06-12T12:35Z

Jag använder Access(2000).
Jag kan inte tänka mig att det blir för många anrop till databasen med tanke på att det fungerar annars, fast det är ju möjligt... :l

Permalänk: https://www.webforum.nu/p/696427

## #4 — Mika3l, 2002-06-12T12:37Z

Hmm, testade att ta bort det, fungerade... :l
Finns det något sätt man kan lösa det på?

Permalänk: https://www.webforum.nu/p/696430

## #5 — doggelito, 2002-06-12T12:48Z

om du hämtar och listar många poster på den sidan så kan du ju prova att hämta med getrows istället.
försök att optimera sql-strängarna, använda joins istället för att öppna separat m.m.
brukar kunna hjälpa med att skapa en "paging-variant" på sidan också.

men detta är ju **OM** det är för många anrop annars vete tusan!

Permalänk: https://www.webforum.nu/p/696439

## #6 — Mika3l, 2002-06-12T13:20Z

Hmmm, jag kan inget om getrows och jag kan inget om join i SQL... :l
Men om man lägger allt i variabler så används ju bara databasen en gång för att ge värden, sedan så används ju bara variablerna...?
Fast frågan är ju om det är för många anrop, med tanke på att det fungerar annars så tror jag nog att så inte är fallet...

Permalänk: https://www.webforum.nu/p/696471

## #7 — doggelito, 2002-06-12T13:39Z

visa sidan vetja så kanske man kan lista ut nått smart! :)

Permalänk: https://www.webforum.nu/p/696498

## #8 — Mika3l, 2002-06-12T14:02Z

Den här koden visar tråden(inte svaren).

```
Set rs = Server.CreateObject("ADODB.Recordset")
SQL = "SELECT IID, rubrik, namn, inlagg, datum, forum, stangd, senaste FROM inlagg WHERE IID = " & Request.QueryString("IID") & ""
rs.Open SQL, Connection
Set rsMemberInfo = Server.CreateObject("ADODB.Recordset")
SQLMemberInfo = "SELECT anvnamn, regdatum, typ, antalinlagg, email, ort, signatur FROM medlemar WHERE anvnamn = '" & rs("namn") & "'"
rsMemberInfo.Open SQLMemberInfo, Connection

Response.Write"<table align=""center"" valign=""top"" width=""600"" cellspacing=""0"" cellpadding=""2"">"
Response.Write"<tr valign=""middle""><td width=""370"" align=""left"" colspan=""1""><a href=""forum.asp?page=visaforum&forum=" & Request.QueryString("forum") & """ class=""rubrik"">" & Request.QueryString("forum") & "</a> - <a href=""forum_visatrad.asp?IID=" & rs("IID") & "&forum=" & Request.QueryString("forum") & """ class=""rubrik"">" & rs("rubrik") & "</a></td>"
If rs("stangd") = False Then
Response.Write"<td align=""right"" width=""230""><a href=""forum_svara.asp?IID=" & rs("IID") & "&forum=" & Request.QueryString("forum") & "&rubrik=" & rs("rubrik") & """><strong>Skriv inlägg</strong></a>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td></tr>"
Else
Response.Write"<td align=""right"" width=""230""><strong><s>Skriv inlägg</s> - Tråd stängd</strong>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</td></tr>"
End If
Response.Write"</table><table align=""center"" valign=""top"" width=""600"" cellspacing=""0"" cellpadding=""2"">"
Response.Write"<tr height=""3""><td width=""140""></td><td width=""460""></tr>"
Response.Write"<tr valign=""top""><td width=""140"" bgcolor=""#E5E5E5"" align=""left"">"
Set rsCheckIfOnline = Connection.Execute("SELECT status FROM medlemar WHERE anvnamn = '" & rsMemberInfo("anvnamn") & "'")
If rsCheckIfOnline("status") = True Then
on_off = "#0AB60A"
on_off_text = "Online<br>"
Else
on_off = "#FF0000"
on_off_text  = "Offline<br>"
End If
rsCheckIfOnline.Close
Set rsCheckIfOnline = Nothing
Response.Write"<font style=""font-size: 12px; font-weight: bold;"">" & rsMemberInfo("anvnamn") & "</font>&nbsp;&nbsp;<font color=""" & on_off & """><b>" & on_off_text & "</b></font>"
If rsMemberInfo("typ") = "Moderator" OR rsMemberInfo("typ") = "Forumledare" Then
Response.Write"<i>" & rsMemberInfo("typ") & "</i><br><br>"
Else
Response.Write rsMemberInfo("typ") & "<br><br>"
End If
Response.Write"Registrerad: " & Left(rsMemberInfo("regdatum"),10) & "<br>"
If rsMemberInfo("ort") <> "" Then
Response.Write"Ort: " & rsMemberInfo("ort") & "<br>"
End If
Response.Write"Inlägg: " & rsMemberInfo("antalinlagg") & "<br><br>"

Response.Write"<a href=""mess_send.asp?till=" & rs("namn") & """><img src=""images/messa.gif"" width=""20"" height=""11"" border=""0"" alt=""Skicka meddelande till " & rs("namn") & """></a>"
If rsMemberInfo("email") <> "" Then
Response.Write"&nbsp;<a href=""mailto:" & rsMemberInfo("email") & """><img src=""images/maila.gif"" width=""14"" height=""9"" border=""0"" alt=""Maila " & rs("namn") & """></a>"
End If
SQLCheckModerators = "SELECT mod1, mod2, mod3, mod4, mod5 FROM underkats WHERE forum_namn = '" & Request.QueryString("forum") & "'"
Set rsCheckModerators = Connection.Execute(SQLCheckModerators)
If Session("user") = rsCheckModerators("mod1") OR Session("user") = rsCheckModerators("mod2") OR Session("user") = rsCheckModerators("mod3") OR Session("user") = rsCheckModerators("mod4") OR Session("user") = rsCheckModerators("mod5") OR Session("user") = rs("namn") OR typ = "Forumledare" Then
Response.Write"&nbsp;<a href=""forum_redigera.asp?IID=" & rs("IID") & """><img src=""images/redigera.gif"" width=""14"" height=""13"" border=""0"" alt=""Redigera inlägget""></a>"
Response.Write"&nbsp;<a href=""forum_tabort.asp?IID=" & rs("IID") & """><img src=""images/tabort.gif"" width=""11"" height=""13"" border=""0"" alt=""Ta bort inlägget""></a>"
If rs("stangd") = False Then
Response.Write"&nbsp;<a href=""forum_stangtrad.asp?page=stang&IID=" & rs("IID") & "&forum=" & Request.QueryString("forum") & """><img src=""images/stangtrad.gif"" width=""12"" height=""13"" border=""0"" alt=""Stäng tråden""></a>"
Else
Response.Write"&nbsp;<a href=""forum_stangtrad.asp?page=oppna&IID=" & rs("IID") & "&forum=" & Request.QueryString("forum") & """><img src=""images/oppnatrad.gif"" width=""12"" height=""17"" border=""0"" alt=""Öpnna tråden""></a>"
End If
End If
Response.Write"</td><td width=""460"" bgcolor=""#F5F5F5""><strong>" & rs("rubrik") & "</strong>&nbsp;&nbsp;&nbsp;<font color=""#783600"">" & rs("datum") & "</font><br><br>" & fixa(rs("inlagg")) & "</td></tr>"
Response.Write"<br><table width=""610"" cellspacing=""0"" cellpadding=""0""><tr><td width=""510"">"
Response.Write"</table><br><br>"

rsMemberInfo.Close
Set rsMemberInfo = Nothing
```

Finns väl säkert något bättre sätt att lösa det på... :p

Permalänk: https://www.webforum.nu/p/696511

## #9 — doggelito, 2002-06-12T14:31Z

Kan det vara att du inte har med:

rsCheckModerators.Close
Set rsCheckModerators = Nothing

någonstans, eller finns det mer kod under?

Annars, det man kan se är väl att du har väldigt många kopplingar till databasen, du borde nog kunna minska med ett par, men det förutsätter ju så klart att man vet hur man ska göra också. ;)
t.ex. borde du kunna sätta ihop dessa till en: rsMemberInfo, rsCheckIfOnline

```
"SELECT anvnamn, regdatum, typ, antalinlagg, email, ort, signatur, status FROM medlemar WHERE anvnamn = '" & rs("namn") & "' "

'dessa rader borde väl funka ändå!
If rsMemberInfo("status") = True Then
on_off = "#0AB60A"
on_off_text = "Online<br>"
Else
on_off = "#FF0000"
on_off_text  = "Offline<br>"
End If
```

eventuellt kan du kanske också göra en join mellan inlagg och medlemar, förenklat så skulle det kunna se ut:

```
"SELECT m.anvnamn, m.regdatum, i.rubrik, i.inlagg FROM medlemar m LEFT JOIN inlagg i ON m.anvnamn = i.namn WHERE IID = " & Request.QueryString("IID") & ""
```

 men det var bara en idé :)

Permalänk: https://www.webforum.nu/p/696529

---

Tråden på webben: https://www.webforum.nu/amne/asp/45690-undantag-inträffade
