04. november 2002 - 09:38Der er
6 kommentarer og 1 løsning
Udtræk af querystring og string-gymnastik!
Hej Alle.
Jeg har et par problemer med en querystring, som jeg håber der er en der kan hjælpe mig med!
Det jeg ønsker, er at kunne udtage hele querystringen, således at jeg senere kan lave lidt string-gymnastik med den
String gymnastikken er er som følger:
----------------------------------------- inputString = replace(inputString, chr34),"") inputString = replace(inputString, "?", "") dim tempArray() as String = split(inputString,"&") -----------------------------------------
For at kunne lave denne string-gymnastik, skal jeg have en string på formen:
EKS: ?pkto="0,2"&pkt1="0"&pkt3="0,1"&
Denne string, har jeg i min querystring, så derfor tænkte jeg at jeg kunne tage den derfra ved at gøre sådan her:
inputString = Request.Querystring.toString()
Hvis jeg gør sådan der, får jeg dog nogle problemer, senere i min kode. Formentligvis fordi der går noget galt i denne toString() konvertering. Min string kommer i hvert fald til at indeholde mere en hvad godt er :-)
Jeg har dog fået løst mit problem ved at lave noget spaghetti-programmering nemlig:
-------------------------------------------- If Request.QueryString("pkt0")<>"" Then inputString = inputString & "pkt0=" & chr(34) & Request.QueryString("pkt0") & chr(34) End if If Request.QueryString("pkt1")<>"" Then inputString = inputString & "&pkt1=" & chr(34) & Request.QueryString("pkt1") & chr(34) End if If Request.QueryString("pkt2")<>"" then inputString = inputString & "&pkt2=" & chr(34) & Request.QueryString("pkt2") & chr(34) End if inputString = inputString + "&" ---------------------------------------------- Som sagt er dette noget møg-programmering, især da der er sat en begrænsening til 3pkt'er, hvilket ikke er optimalt i mit tilfælde.
Ang. flere brugere på eksperten, skyldes det at begge brugere er en del af en projektgruppe, som arbejder med ovenstående!! - Intet snyd!!!
Problemet er, at det eneste der virker, er spaghetti-koden med alle if-sætningerne. Ville hellere have at jeg kunne bruge den øverste løsning, hvor jeg henter hele min query-string, og så manipulerer denne.
inputString = Request.Querystring.toString()
Når jeg gør dette, opstår der dog problemer længere nede i min kode, fordi min inputstring af en eller anden årsag ser ud til at indeholde nogle sjove værdier. Måske nogle forskellige ascii koder for tegn. (Er ikke sikker) - Noget går dog galt.
Den fejl der sker, er at jeg får smidt nogle sjove værdier i mit array, efter at have kørt string-gymnastikken.... HAr pårøvet at kalde siden med:
?okt1="0,1"&pkt1="1,2"&pkt2="2"
Så får jeg senere en fejl, da jeg i et forsøg på at konvertere en af strengene i mit array til en integer, da strengen nu indeholder følgende: "%220"2c1%22 !?!?!? Hvor dette komme fra aner jeg dog ikke!!!!
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.