Sample code for 30+ languages & platforms
AutoIt

Keeping Query Params in a Hashtable

Demonstrates how to use a Chilkat Hashtable to hold query params and re-emit as a query param string.

Note: The ToQueryString method was added in Chilkat v9.5.0.92.

Chilkat AutoIt Downloads

AutoIt
Local $bSuccess = False

$oHt = ObjCreate("Chilkat.Hashtable")

; Add name/value pairs from an existing query param string where the values are already URL encoded.
Local $sQp = "txt=this%20is%20a%20test&color=blue&fruits=apples%26oranges"
$bSuccess = $oHt.AddQueryParams($sQp)

; Add some additional name/value pairs.
$oHt.AddStr("name","Jack Sparrow")
$oHt.AddStr("movie","Pirates of the Carribean")

; Iterate over the hash table to show what we have..

$oKeys = ObjCreate("Chilkat.StringTable")
$oHt.GetKeys($oKeys)
Local $iNumKeys = $oKeys.Count
Local $sKey
Local $sVal
Local $i = 0
While $i < $iNumKeys
    $sKey = $oKeys.StringAt($i)
    $sVal = $oHt.LookupStr($sKey)
    ConsoleWrite($sKey & " = " & $sVal & @CRLF)
    $i = $i + 1
Wend

; Output for the above loop:

; color = blue
; name = Jack Sparrow
; fruits = apples&oranges
; txt = this is a test
; movie = Pirates of the Carribean

; Get all name/value pairs as a query parm string with values URL encoded
$sQp = $oHt.ToQueryString()
ConsoleWrite($sQp & @CRLF)

; Result:
; color=blue&name=Jack%20Sparrow&fruits=apples%26oranges&txt=this%20is%20a%20test&movie=Pirates%20of%20the%20Carribean