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