Avatar billede obhat Nybegynder
15. marts 2006 - 19:16 Der er 16 kommentarer og
1 løsning

If and or sætning

Jeg har forsøgt at lave denne and or sætning, men den ignoreres- hvorfor?

If request.form("data") = "Alle" OR request.querystring("data") = "Alle" Then
else
response.write ("fejl")
end if
Avatar billede softspot Forsker
15. marts 2006 - 19:25 #1
Prøv med eksplicit typecast:

If cstr(request.form("data")) = "Alle" OR cstr(request.querystring("data")) = "Alle" Then
else
  response.write ("fejl")
end if

alternativt:

If request.form("data") & "" = "Alle" OR request.querystring("data") & "" = "Alle" Then
else
  response.write ("fejl")
end if
Avatar billede softspot Forsker
15. marts 2006 - 19:26 #2
...og vær i øvrigt opmærksom på forskel i case når du sammenligner strenge. Standardsammeligningsmetode er case-sensitive i VBS.
Avatar billede morhan Novice
15. marts 2006 - 19:28 #3
If LCase(Request("data")) = "alle" Then

er en lille genvej til både get og post variabler
Med LCase bliver sammenligningen case insensitive
Avatar billede obhat Nybegynder
15. marts 2006 - 19:31 #4
Hvad betyder LCase insensitive?
Avatar billede softspot Forsker
15. marts 2006 - 19:33 #5
insensitive = ufølsom

dvs. den ikke bekymrer sig om strengen indeholder store eller små bogstaver - du skal bare altid samenligne med små bogstaver.
Avatar billede obhat Nybegynder
15. marts 2006 - 19:37 #6
Ok :-)
Jeg har prøvet de alternativer i har foreslåget, men alle ryger lige igennem :(
Avatar billede softspot Forsker
15. marts 2006 - 19:39 #7
hvordan ser din form ud?
Avatar billede obhat Nybegynder
15. marts 2006 - 19:49 #8
Det er lidt kompliceret at beskrive, jeg sender en formular ind i et søgescript og det virker fint, i dette script har jeg forsøgt at bygge paging på og for at beholde formular date på siden, sender jeg dem videre via "næste side" linket som querystring og i min SQL forsøger jeg så at dele disse 2 op, altså data fra request.form og data fra request.querystring
Avatar billede softspot Forsker
15. marts 2006 - 19:54 #9
Det der er interessant at se, er det kode der kalde den side hvor din ikke-fungerende if-sætning er...
Avatar billede obhat Nybegynder
15. marts 2006 - 20:02 #10
Det er her i min SQL der går, i første if sætning ryger den igennem:

<%

SQL = "SELECT * FROM biler WHERE"

If request.form("data") & "" = "Alle" OR request.querystring("data") & "" <> "" Then
else
SQL = SQL & " AND data = '" & request.form("data") & "' OR '" & request.querystring("data") & "' "
End If

If request.form("data2") & "" = "Alle" OR request.querystring("data2") & "" <> "" Then
else
  SQL = SQL & " AND data2 = '" & request.form("data2") & "' OR '" & request.querystring("data2") & "' "
End If

If request.form("farve") & "" = "Alle" OR request.querystring("farve") & "" <> "" Then

SQL = SQL & " ORDER BY id DESC LIMIT "& currentPage &","& pageSize &""
else
  SQL = SQL & " AND farve = '" & request.form("farve") & "' OR '" & request.querystring("farve") & "' ORDER BY id DESC LIMIT "& currentPage &","& pageSize &""
End If

set rs = conn.Execute(SQL)

if not rs.eof then
else
response.redirect("search.asp?data=ingen")
end if

%>
Avatar billede obhat Nybegynder
15. marts 2006 - 20:24 #11
Eller var det noget andet kode du ville se?
Avatar billede softspot Forsker
15. marts 2006 - 20:49 #12
Ja, det er den kode som kalder denne side...
Avatar billede obhat Nybegynder
15. marts 2006 - 21:41 #13
Det er jo min querystring:

<a href="result.asp?page=<%= currentPage+pageSize %>&model=<% request.form("model2") %>&farve=<% request.form("farve") %>> osv....

Det resultere i denne sql som fejler, da værdierne ikke kommer med, derfor tjekker jeg med de før omtalte if-sætninger:

SELECT * FROM biler WHERE AND model = '' AND farve = '' AND alder = '' AND udstyr = '' AND landsdel = '' ORDER BY id LIMIT 15,15
Avatar billede softspot Forsker
15. marts 2006 - 21:46 #14
Har du prøvet at udskrive værdierne af din form, på siden hvor du sender parametrene videre. Det kan være en god idé idet du så får en bedre fornemmelse af hvor data går tabt. Det er jo et spørgsmål om at du skal prøve at indkredse fejlkilden...
Avatar billede obhat Nybegynder
15. marts 2006 - 22:33 #15
Det har jeg og værdierne kommer fint med over, men hvad der sker i mine if-sætninger fatter jeg ikke, alt løber direkte igennem
Avatar billede obhat Nybegynder
16. marts 2006 - 23:38 #16
lukker
Avatar billede softspot Forsker
16. marts 2006 - 23:49 #17
Velbekomme...
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