Avatar billede reino Nybegynder
20. juni 2005 - 14:54 Der er 2 kommentarer og
1 løsning

Loop variabel

Hejsa,

har et kæmpeproblem, prøver at få nedenstående script til at virke. Det jeg ønsker det skal gøre er at såfremt objrs(menu_id) er lig med request.questring skal den gøre en ting, har lavet et loop men den vil ikke som jeg vil. Feks. hvis menu_id er 1 og request.querystring er = 1 skal baggrund være sort, skyldes det evt. at sriptet ikke kan matche et objrs mod en variabel eller ?:

Set objRS = Server.CreateObject("ADODB.Recordset")
objRS.Open strSQL, objConn, adOpenStatic, adLockReadOnly, adCmdText
If Not objRS.EOF Then
    objRS.MoveFirst
    Do While Not objRS.EOF
    test=request.querystring("mainmenu")
        %>
    <td valign="center" height="10" align="middle" <%if objRS("menu_ID")=test then%> bgcolor="#000000" <%else%>class=out onMouseOver="this.className='over'" onmouseout="this.className='out'" style="border: 1px solid #ffffff"<%end if%>><a class="menulink" href="default.asp?mainmenu=<%=objRS("menu_ID")%>"><%=objRS("menu_short")%><%=test%><%=objRS("menu_ID")%></a></td>
        <%
        objRS.MoveNext
    Loop
End If
objRS.Close
Set objRS = Nothing
%>
Avatar billede fennec Nybegynder
20. juni 2005 - 15:11 #1
Alt hvad der kommer fra Request bliver opfattet som tekst. Du får altså ikke tallet 6 men teksten "6". Du skal derfor typecaste dine variabler når du sammenligner. Det gøres ved at smide &"" på, så begge variabler er tekst:

<%if objRS("menu_ID")&"" = test&"" then%>
Avatar billede fennec Nybegynder
20. juni 2005 - 15:13 #2
Du kan også lave det om til tal med cInt() men så må requesten ikke være tom, og det SKAL være tal. Min erfaring siger det er nemmere at lave tekst sammenligning, da man så undgår de problemer.

.o) <-- One Eyed Jack
Avatar billede reino Nybegynder
23. juni 2005 - 09:34 #3
thx, det virkede :)
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