Dennis Møller wrote :
> Hejsa!
>
> Jeg er nået til et sted i min programmering, hvor jeg har brug
> for en IF-sætning, der indeholder to variabler. Den er 100%
> korrekt skrevet, men den virker bare ikke!
> Jeg har kigget alt igennem jeg nogensinde har programmeret og
> umiddelbart kan jeg ikke finde en IF-sætning med to variabler. Så
> var det jeg tænkte... "Kan det overhovedet lade sig gøre?" og
> hvis nej; "Hvad i alverden gør jeg så?"... :P
>
> Her er det konkrete eksempel:
>
> <% IF rs2("ID") = Request.Querystring("tilprofil") THEN %>
>
> Querystring'en kommer med et et- eller tocifret tal, f.eks. 17
> Jeg har prøvet at skrive:
> 17
> i stedet for:
> Request.Querystring("tilprofil")
> og det irriterende er at her virker det !
>
> Jaja, udover dette omtalte problem, synes jeg det går fremragende
> med mit programmering. Jeg er kommet langt...
Når du sammenligner Querystring-variable i ASP, så er de som udgangspunkt
at typen "variant". Derfor er det altid en god idé at cast'e dine
variable til den type, som de reelt er - dvs
if rs("id") = CInt(Request.QueryString("tilprofil")) then
end if
Grunden til at rs("id") korrekt regnes som et tal er sikkert, at ID i din
database er defineret som et tal.
Husk her altid at lave fejlhåndtering, da CInt() giver en fejl, hvis
variablen er enten den tomme streng, null eller slet ikke et tal.
--
Jesper Stocholm
http://stocholm.dk
Give a man a fish and he will have food for a day,
give a man an elephant, and he will have food for a week.