---
title: "Kolla om sträng har värde!"
type: "forum-thread"
url: "https://www.webforum.nu/amne/asp/95592-kolla-om-sträng-har-värde"
topic: "ASP"
topic_url: "https://www.webforum.nu/amne/asp"
author: "magnusfernstrom"
published: "2004-01-23T17:42:53.000Z"
updated: "2004-01-23T22:58:22.000Z"
replies: 20
views: 347
page: 1
pages: 2
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/95592-kolla-om-sträng-har-värde"
---

# Kolla om sträng har värde!

_Sida 1 av 2._

## #1 — magnusfernstrom, 2004-01-23T17:42Z

Hej hej!
Jag har lite problem med att kolla om en RequestQuerystring har något värde.

Det är så att jag har en sida man skall kunna läsa meddelanden på, varje meddelande har ett unikt ID, såklart. Men om man bara skriver namnet på sidan, det vill säga "meddelanden.asp" och inte har med något värde (meddelanden.asp?message=1) så får man upp felsida som avslöjar en hel del smaskig information om vart bl.a. databasen ligger.

Så hur ska jag göra för att kolla om strängen för med sig något och skriva ut ett eget meddelande om att meddelandet inte finns om den inte har nåt värde?

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

## #2 — @nders, 2004-01-23T17:44Z

```
If request.querystring("message") = "" then
    ' kod här som ska köras när querystringen inte har något värde
else
    ' resten av koden här
end if
```

Ibland är det enklare än man tror. :)

edit: snabeln är en klantpelle.

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

## #3 — M.Cheraghi, 2004-01-23T17:45Z

```
<%
If request.querystring("ID") then
'wiii querystringen finns
else
'vad håller han på med?
End if
%>
```

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

## #4 — magnusfernstrom, 2004-01-23T17:51Z

Uuuuuunderbart...tack så mycket.

@nders

Jag har redan provat ditt, men det fungerade inte :( alltså innan jag frågade här. Jag trodde det kanske skulle vara något mer än den lilla koden :)

Tack för hjälpen

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

## #5 — @nders, 2004-01-23T17:56Z

Det borde inte behövas något mer en det jag skrev (och redigerade in ;) ) ovan. :)

Men huvudsaken är ju att du löser problemet. :)

Mvh

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

## #6 — magnusfernstrom, 2004-01-23T17:57Z

Okej, tack :D
ska pröva snart, men just nu är det problem med brinkster :)

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

## #7 — magnusfernstrom, 2004-01-23T18:01Z

```
Microsoft OLE DB Provider for ODBC Drivers error '80040e14' 

[Microsoft][ODBC Microsoft Access Driver] Syntax error (missing operator) in query expression 'Id ='. 

/themad/db/Medlems sida test/readmessage.asp, line 89
```

Jippiii ;)

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

## #8 — magnusfernstrom, 2004-01-23T18:02Z

Request.Querystring = TOM! med andra ord :(

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

## #9 — @nders, 2004-01-23T18:02Z

Vad är det för querystring du försöker använda i SQL-frågan då? Det är samma som du ska kontrollera i if-satsen. ;)

Visa hur din kod ser ut nu.

Mvh

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

## #10 — magnusfernstrom, 2004-01-23T18:04Z

Jupp....
Det är alltså ett Id som följer med meddelandets rubrik som är en länk sidan innan. men om man inte har nåt värde vill jag skriva utt ett litet meddelande :)

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

## #11 — magnusfernstrom, 2004-01-23T18:06Z

```
<%
If Request.Querystring("message") = "" Then
%>
<%
Set db = Server.CreateObject("ADODB.Connection")
db.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("message.mdb")
SQL = "SELECT * FROM meddelanden WHERE Id = " & Request.Querystring("message") & ""
Set rs = db.Execute(SQL)
%>

<%
If Session("username") = rs("till") Then
%>

<%
Do until rs.EOF
%>

<span style=font-size=15>
<b>
<%=rs("rubrik")%>
</b>
<br>
<span style=font-size=12>
<b>Från</b>: <%=rs("fran")%>
<br>
<b>Skickat</b>: <%=rs("datum")%>
<br>
<%=rs("meddelande")%>

<%
rs.MoveNext
Loop
%>

<%
Else
Response.Write "Nejdu"
End If
%>
```

Ojdå jag såg visst att jag skrivit Else och End If en gång för mycket. Men nu komemr detta meddelande upp:

```
Microsoft VBScript compilation error '800a03f6' 

Expected 'End' 

/themad/db/Medlems sida test/readmessage.asp, line 182
```

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

## #12 — @nders, 2004-01-23T18:06Z

edit:

Läs mitt första inlägg igen.
Så som du har skrivit koden nu så gör du ju det som ska göras när qureystringen **har** ett värde, endast när det **inte** har ett värde.

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

## #13 — magnusfernstrom, 2004-01-23T18:07Z

Men va dum man kan vara!!!
Sorry ja ska fixa till koden och kolla om det går bättre....
Tack för ert tålamod :)

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

## #14 — magnusfernstrom, 2004-01-23T18:09Z

Jaha och nu får jag detta:
Microsoft VBScript compilation error '800a03f6' 

Expected 'End' 

/themad/db/Medlems sida test/readmessage.asp, line 174 

Else
^

med denna kod:

```
<%
If Request.Querystring("message") = "" Then
Response.Write "Nejdu"
Else
%>
<%
Set db = Server.CreateObject("ADODB.Connection")
db.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("message.mdb")
SQL = "SELECT * FROM meddelanden WHERE Id = " & Request.Querystring("message") & ""
Set rs = db.Execute(SQL)
%>
<%
If Session("username") = rs("till") Then
%>
<%
Do until rs.EOF
%>
<span style=font-size=15>
<b>
<%=rs("rubrik")%>
</b>
<br>
<span style=font-size=12>
<b>Från</b>: <%=rs("fran")%>
<br>
<b>Skickat</b>: <%=rs("datum")%>
<br>
<%=rs("meddelande")%>
<%
rs.MoveNext
Loop
%>
<%
End If
%>
```

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

## #15 — M.Cheraghi, 2004-01-23T18:09Z

du saknar en END IF tagg till följande IF sats som du startat
\<%
If Session("username") = rs("till") Then
%\>

R:/ man ska inte på fika medan man skriver inlägg då missar man endel :P

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

## #16 — magnusfernstrom, 2004-01-23T18:10Z

Längst nere i koden...

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

## #17 — magnusfernstrom, 2004-01-23T18:11Z

Oj ja det har du rätt i.
Alltså ursäkte mig om jag frågar så enkla frågor, men detta är svårt ;)

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

## #18 — magnusfernstrom, 2004-01-23T18:12Z

Weeeee....det fungerar!
Jag blir så glad när det fungerar, nu måste jag köpa kakor och mjölk :D

Trevlig helg pojkar (HA ;) ), hörs (för jag lär komma tillbaks med fler problem) :D

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

## #19 — @nders, 2004-01-23T18:15Z

1) du har väldigt många onödiga context-switchar (\<% %\>) i din kod, rensa.
2) Om du indenterar din kod ordentligt så är det betydligt lättare att se vad som saknas när det gäller if-satser.

```
<%
If Request.Querystring("message") = "" Then
	Response.Write "Nejdu"
Else
	Set db = Server.CreateObject("ADODB.Connection")
	db.Open "Driver={Microsoft Access Driver (*.mdb)}; DBQ=" & server.mappath ("message.mdb")
	SQL = "SELECT * FROM meddelanden WHERE Id = " & Request.Querystring("message") & ""
	Set rs = db.Execute(SQL)
	If Session("username") = rs("till") Then

		Do until rs.EOF
			%>
			<span style=font-size=15>
			<b>
			<%=rs("rubrik")%>
			</b>
			<br>
			<span style=font-size=12>
			<b>Från</b>: <%=rs("fran")%>
			<br>
			<b>Skickat</b>: <%=rs("datum")%>
			<br>
			<%=rs("meddelande")%>
			<%
			rs.MoveNext
		Loop
	End If
%>
```

När koden nu är indenterad, ser du att det är en End If som saknas till den yttersta if-satsen.

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

## #20 — magnusfernstrom, 2004-01-23T18:24Z

Shit alltså, du är ju för underbar :)

Tack så mycket. Men anledningen till att jag har många switchar är för att jag testade lite, du vet, vill vara på den säkra sidan (och nej fråga inte varför, detta är en så kallad fix ide) men jag brukar alltid fixa till koden när jag ska lägga upp sidan "på riktigt".

Tack så jätte mycket i alla fall

Mvh Magnus Fernström

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

---

Tråden på webben: https://www.webforum.nu/amne/asp/95592-kolla-om-sträng-har-värde  
Nästa sida: https://www.webforum.nu/amne/asp/95592-kolla-om-sträng-har-värde/page2.md
