12. januar 2001 - 09:33Der er
22 kommentarer og 1 løsning
Test på en querystring
Jeg vil gerne teste på en variabel. URL= minside.asp?ID=123456&sortkey=varegr
I min kode har jeg så skrevet If Request.Querystring(\"sortkey\") <> \"\" Then sortkey = Request.Querystring(\"sortkey\") Else sortkey = \"beskrivelse\" End if SQL = \"SELECT * FROM varetabel ORDER BY \"& sortkey &\";\"
Men hvis ikke der er en sortkey i URL\'en sættes sortkey alligevel til indholdet af denne - altså \"\". Den hopper aldrig ned i min ELSE clause.
Det er fordi at en ikke eksisterende streng ikke er lig med en tom streng..... Prøv med
If IsNull(Request.Querystring(\"sortkey\")) Then sortkey = \"beskrivelse\" Else sortkey = Request.Querystring(\"sortkey\") End if SQL = \"SELECT * FROM varetabel ORDER BY \"& sortkey &\";\"
Hvad ??? Det passer ikke... og hvad skulle forskellen på Request.Querystring(\"sortkey\") og Request(\"sortkey\") være ????? Nej der er ingen forskel...
If Request.Querystring(\"sortkey\") = \"\" Then sortkey = \"beskrivelse\" Else sortkey = Request.Querystring(\"sortkey\") End if SQL = \"SELECT * FROM varetabel ORDER BY \"& sortkey &\";\"
Det er fuldstændig sindsygt, nu bruger jeg dit svar, men den sætter stadig sortkey til \"\" og fejler derfor i min SQL \"...ORDER BY ;\" hvilket jo ikke er så underligt.
OK hack den lidt : \'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\' If Not isNull(Request.Querystring(\"sortkey\")) Then sortkey = Request.Querystring(\"sortkey\") End if if sortkey = \"\" then sortkey = \"beskrivelse\" end if \'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'\'
koden er den samme som du lagde ud med: <% If Request.Querystring(\"sortkey\") <> \"\" Then sortkey = Request.Querystring(\"sortkey\") Else sortkey = \"beskrivelse\" End if SQL = \"SELECT * FROM varetabel ORDER BY \"& sortkey & \";\"
Kasper, min side er overdrevet lang fordi den benytter en masse subs, der lavet html, men her er et større udsnit.
dkjohn, det er en TeleDK Server som jeg ikke kan genstarte. (med vilje!)
SUB visvare if not Session(\"checked\") Then Response.redirect \"default.asp\" sc_header() sc_PageTopAndMenu(\"\")
If request(\"action\") = \"Søg\" Then
dim sortkey sortkey = \"beskrivelse \" If Not isNull(Request.Querystring(\"sortkey\")) Then sortkey = Request.Querystring(\"sortkey\") End if if sortkey = \"\" then sortkey = \"beskrivelse\" end if
If Request(\"varegr\") <> \"alle\" Then SQL = \"SELECT * FROM lavpris WHERE varegruppe = \'\" & Request(\"varegr\") & \"\' ORDER BY \" & sortkey & \";\" Else SQL = \"SELECT * FROM lavpris ORDER BY \" & sortkey & \";\" END IF ELSE SQL = \"SELECT * FROM lavpris ORDER BY \" & sortkey & \";\" END IF
connectDBOpen(\"SELECT DISTINCT varegruppe FROM lavpris;\") %> <table border=\"0\" cellspacing=\"0\" cellpadding=\"0\"> <tr> <form name=\"soeg\" action=\"default.asp\" method=\"post\"> <td> Vis kun følgende varegruppe: <select name=\"varegr\" size=\"1\"><option selected value=\"alle\">Vis alle</option> <% Do while not rs.eof response.write \"<Option value=\'\" & rs(\"varegruppe\") & \"\'>\" & rs(\"varegruppe\") & \"</option>\" rs.movenext loop Response.Write \"</select>\" %> <input type=\"submit\" name=\"action\" value=\"Søg\"> <input type=\"submit\" name=\"action\" value=\"Opret ny vare\"> </td></form></tr> </table>
<%= sql%><center> <table border=\"0\" cellpadding=\"0\" cellspacing=\"1\" width=\"500\" height=\"10\"> <tr bgcolor=\"#99cc33\"> Og herefter kommer en masse html kode
Jeg kan altså ikke se hvad der skulle være galt, op til flere af de eksempler som jeg og andre har angivet skulle virke.....De virker også hos mig... Hvis jeg var dig ville jeg prøve at ringe til TDK\'s hjælp/hotline/support eller hvad de nu kalder det, sig at der er noget galt, når noget ASP kode fungere på en maskine, men ikke på deres... Prøv evt. at køre det på en lokal server ( PWS / IIS ) på din egen maskine, for at have bevis matrialet iorden.... For at være sikker på at du har ret, så prøv at lave det lille eksempel som dkjohn har vist, lav det på din egen maskine, og på TDK\'s, hvis det stadig ikke virker på TDK\'s server, så har du MEGET ret til at brokke dig.... Kasseper
Jeg ved det, men jeg vil sværge på at det gjorde det ikke til at starte med ?? Jeg talte med TeleDK men de vil ikke røre ved serveren så længe den (synes som om) kører fint.
Men alligevel fungerer min side ikke og jeg fatter det simpelthen ikke.
Nu har jeg ændret p åalle variabel navne, så de ikke konflikter med noget andet, ændret på parameter navnet. Alt sammen uden held. Det er fandme uhyggeligt - du.
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.