Jag vill på en sida ha en länk med en querystring för att skicka med ett värde, efter det vill jag skicka tillbaks till den sidan där man var.
Hur löser jag det?
Problemet är att det ska bli rätt med de övriga querystrings man har med sig så att säga...
Du kan ju (på mottagarsidan) gå igenom QueryString-collection och byta ut lang=sv mot lang=fi och sedan bygga upp en ny QueryString dynamiskt. Därefter skickar du användaren till den "nya" sidan.
Jag gjorde en liten funktion för det för en faslig massa år sedan, vet inte om det hjälper dig nåt vidare med jag bifogar koden iaf :)
Function GetCurrentURL()
Dim strQueryString
Dim strServerName
Dim strScriptName
Dim strURL
strQueryString = Request.QueryString
strServerName = Request.ServerVariables("SERVER_NAME")
strScriptName = Request.ServerVariables("SCRIPT_NAME")
strURL = "http://" & strServerName & strScriptName
If strQueryString <> "" Then
strURL = strURL & "?" & strQueryString
End If
GetCurrentURL = strURL
End Function
Function backlink(str)
strquery = request.querystring
strscriptname = request.servervariables("SCRIPT_NAME")
queryArr = split(strquery , "&")
for i = 0 to ubound(queryArr)
If instr(queryArr(i),str) then
'Gud och någon mer vet varför jag inte kan använda mig av NOT i If-satsen
'jag vet det inte...
Else
backlink = queryArr(i) & "&" & backlink
End if
Next
backlink = strscriptname & "?" & backlink
End function
'Gud och någon mer vet varför jag inte kan använda mig av NOT i If-satsen
'jag vet det inte...
Det har jag också stört mig på. Men, om man tänker efter lite så är det kanske inte så konstigt (tror jag) för instr returnerar ju talet på placeringen av första träffen och inte ett boolvärde.
Så korrekt skriven sats borde då bli:
If instr(queryArr(i),str) = 0 Then
...
End If
Man borde även kunna omvandla till en bool:
If Not cBool(instr(queryArr(i),str)) Then
...
End If
'Gud och någon mer vet varför jag inte kan använda mig av NOT i If-satsen
'jag vet det inte...
Detsamma gäller Len().
För ett tag sedan skulle jag använda mig av det för att det är mer korrekt än större/mindre än av ett värde, men det ville sig inte alls! Tog ett tag för att komma på att NOT av en längd inte alls blir det jag tänkte mig...
Man ska ha Len() > < (ev =) för att det ska bli korrekt.