---
title: "Undantag inträffade"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/46813-undantag-inträffade"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "ampy"
published: "2002-06-28T10:36:44.000Z"
updated: "2002-06-28T17:26:19.000Z"
replies: 14
views: 291
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/46813-undantag-inträffade"
---

# Undantag inträffade

## #1 — ampy, 2002-06-28T10:36Z

Min kod:

```
Do Until X = 11

	X = X + 1

	If RS("username1") <> "" then

	namn = Replace(server.HTMLEncode(RS("username1")),vbCrlf,"")
	text = Replace(Free(server.HTMLEncode(RS("text"))),vbCrlf,"")
	text = Replace(text,"'","\'")
	text = " " & text
	

	namn = "<b><font color=""#000066"">[" & Mid(RS("datum"),12,5) & "]</font>&nbsp;<font color=""#CC0000"">" & namn & "<font color=""#000000"">:&nbsp;</font> "&"</b>"
	
	Response.Write "parent.namn" & x & ".innerHTML = '" & namn & "'" & vbCrlf
	Response.Write "parent.text" & x & ".innerHTML = '" & text & "'" & vbCrlf 

	Else
	
	Response.Write "parent.namn" & x & ".innerHTML = ''" & vbCrlf
	Response.Write "parent.text" & x & ".innerHTML = ''" & vbCrlf 

	end if

	RS.MoveNext
Loop
```

Jag får undantag inträffade på If RS("username1") \<\> "" then

Varför?

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

## #2 — UlfT, 2002-06-28T10:43Z

Du kanske inte har någon kolumn som heter "username1"? Skulle jag namnge en kolumn i en tabell, skulle jag skippa den där 1:an som du har petat dit. Därför förefaller det osannolikt att någon har namngett kolumnen till "username1". Kolla om inte kolumnen i själva verket heter "username".

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

## #3 — Mharlin, 2002-06-28T10:46Z

Det är alltid värt att kolla: If not rs.EOF then för att se att du inte har kommit till slutet av recordsetet. Om fältet med användarnamnet är helt NULL kan du kolla det med:
if rs("username1") is not null.

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

## #4 — ampy, 2002-06-28T10:47Z

Jo, username1 finns. Men skrev så här istället 

If Not RS.EOF then 

men det funkar inte heller. Alltså det jag vill göra är att om det inte finns fler poster så ska det bli else

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

## #5 — Mharlin, 2002-06-28T10:54Z

Det enklaste sättet att göra det på är:

while not RS.EOF
...
...
...
wend

Så snart den har gott igenom alla poster kommer den att gå ut ur while satsen så då är det bara skriva else koden där...

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

## #6 — ampy, 2002-06-28T11:07Z

Menar du så här eller?

```
	while not RS.EOF
	
	X = X + 1

	namn = Replace(server.HTMLEncode(RS("username1")),vbCrlf,"")
	text = Replace(Free(server.HTMLEncode(RS("text"))),vbCrlf,"")
	text = Replace(text,"'","\'")
	text = " " & text
	

	namn = "<b><font color=""#000066"">[" & Mid(RS("datum"),12,5) & "]</font>&nbsp;<font color=""#CC0000"">" & namn & "<font color=""#000000"">:&nbsp;</font> "&"</b>"
	
	Response.Write "parent.namn" & x & ".innerHTML = '" & namn & "'" & vbCrlf
	Response.Write "parent.text" & x & ".innerHTML = '" & text & "'" & vbCrlf 

	

	wend
	
	Response.Write "parent.namn" & x & ".innerHTML = ''" & vbCrlf
	Response.Write "parent.text" & x & ".innerHTML = ''" & vbCrlf
```

Men då laddar bara sidan.

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

## #7 — Mharlin, 2002-06-28T11:16Z

precis så, bara att du måste sätta en rs.MoveNext före went så att den går till nästa rad i tabellen. Det blir alltså så här:

	while not RS.EOF
	
	X = X + 1

	namn = Replace(server.HTMLEncode(RS("username1")),vbCrlf,"")
	text = Replace(Free(server.HTMLEncode(RS("text"))),vbCrlf,"")
	text = Replace(text,"'","'")
	text = " " & text
	

	namn = "\<b\>\<font color=""#000066""\>\[" & Mid(RS("datum"),12,5) & "\]\</font\> \<font color=""#CC0000""\>" & namn & "\<font color=""#000000""\>: \</font\> "&"\</b\>"
	
	Response.Write "parent.namn" & x & ".innerHTML = '" & namn & "'" & vbCrlf
	Response.Write "parent.text" & x & ".innerHTML = '" & text & "'" & vbCrlf 

	rs.MoveNext

	wend
	
	Response.Write "parent.namn" & x & ".innerHTML = ''" & vbCrlf
	Response.Write "parent.text" & x & ".innerHTML = ''" & vbCrlf

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

## #8 — ampy, 2002-06-28T11:20Z

Nu blir inte x + 1 hela tiden.

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

## #9 — Mharlin, 2002-06-28T11:28Z

se till att du sätter x till ett värde innan du går in i while loopen...då kommer den att räkna framåt och gör den inte det så är det för att det inte finns några rader i tabellen där du försöker läsa från.

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

## #10 — ampy, 2002-06-28T11:31Z

```
	X = 0

	
	while not RS.EOF
	
	X = X + 1

	namn = Replace(server.HTMLEncode(RS("username1")),vbCrlf,"")
	text = Replace(Free(server.HTMLEncode(RS("text"))),vbCrlf,"")
	text = Replace(text,"'","\'")
	text = " " & text
	

	namn = "<b><font color=""#000066"">[" & Mid(RS("datum"),12,5) & "]</font>&nbsp;<font color=""#CC0000"">" & namn & "<font color=""#000000"">:&nbsp;</font> "&"</b>"
	
	Response.Write "parent.namn" & x & ".innerHTML = '" & namn & "'" & vbCrlf
	Response.Write "parent.text" & x & ".innerHTML = '" & text & "'" & vbCrlf 

	rs.MoveNext 

	wend
	
	Response.Write "parent.namn" & x & ".innerHTML = ''" & vbCrlf
	Response.Write "parent.text" & x & ".innerHTML = ''" & vbCrlf
```

Du kanske har missförstått mig så jag förklarar lite nogrannare.
Det jag vill göra är att först loopa igenom dem poster som finns i tabellen. Om det tex bara finns 5 poster så ska resten av posterna bli else och x ska adderas med 1 varje gång. För att det måste alltid finnas 11 parant...

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

## #11 — Mharlin, 2002-06-28T11:42Z

då fattar jag...Det här funkar i såna fall...

```
	X = 0

	
	while not RS.EOF
	
	X = X + 1

	namn = Replace(server.HTMLEncode(RS("username1")),vbCrlf,"")
	text = Replace(Free(server.HTMLEncode(RS("text"))),vbCrlf,"")
	text = Replace(text,"'","\'")
	text = " " & text
	

	namn = "<b><font color=""#000066"">[" & Mid(RS("datum"),12,5) & "]</font>&nbsp;<font color=""#CC0000"">" & namn & "<font color=""#000000"">:&nbsp;</font> "&"</b>"
	
	Response.Write "parent.namn" & x & ".innerHTML = '" & namn & "'" & vbCrlf
	Response.Write "parent.text" & x & ".innerHTML = '" & text & "'" & vbCrlf 

	rs.MoveNext 

	wend
	
while x < 12

x = x + 1
Response.Write "parent.namn" & x & ".innerHTML = ''" & vbCrlf
Response.Write "parent.text" & x & ".innerHTML = ''" & vbCrlf 

wend
```

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

## #12 — ampy, 2002-06-28T11:47Z

Nu funkar det bra.

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

## #13 — ampy, 2002-06-28T16:06Z

Den funkar inte perfekt. När det finns fler än 11 poster så skriver den ut parent12 och det ska den inte göra. Får ett javascipt fel om att parant12 är null och parant12 ska inte ens finnas med. Det ska bara gå till 11

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

## #14 — Mharlin, 2002-06-28T16:16Z

Skriv så här i första while loopen:

while not RS.EOF and X \< 12

Det borde lösa det och om det är mer än 11 poster i databasen kommer den inte gå in i andra while loopen heller.

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

## #15 — solbulle, 2002-06-28T17:26Z

Är det inte så att du börjar räkna från 0?

0-12 = 13 poster.

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

---

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