Problem with send command???
Mark Smith
mark at maseurope.net
Thu Jun 26 19:38:53 EDT 2008
These are two handlers I use to send data between client and server
in an app of mine, but might serve well enough for passing data
around in those situations where you can't use arrays without trouble.
function serializeArray pArray
repeat for each line L in keys(pArray)
put L & "=" & urlencode(pArray[L]) & cr after cArray
end repeat
delete char -1 of cArray
return base64encode(compress(cArray))
end serializeArray
function unserializeArray pSerializedArray
put decompress(base64decode(pSerializedArray)) into tArray
split tArray by cr and "="
repeat for each line L in keys(tArray)
put urlDecode(tArray[L]) into tArray[L]
end repeat
return tArray
end unserializeArray
It's not very efficient in terms of data size for small arrays, but
it's made things easy for the way I like to package up data (I use
arrays a lot) to send to and from the server (running rev cgis).
Best,
Mark
On 26 Jun 2008, at 21:58, Jim Ault wrote:
> Of course, for those who know and use customproperties, a custom
> property
> set is the same thing as an array
>
> ----------- copy script lines and paste into the stack script
> ---------
> on dotest
>
> put 42 into tMyArray["Vera"]
> put 67 into tMyArray["Chuck"]
> put "Dave" into tName
> put 123 into tValue
>
> set the custompropertyset of this stack to "tempStorArr"
> set the customproperties of this stack to tMyArray
> send "TestIt tName, tValue" to this stack
> put the customproperties of this stack into tMyArray --update
> the array
>
> answer the tName of this stack --show that it worked
> answer tMyArray[ tName] --show that it worked
>
> --optional
> set the custompropertyset of this stack to "tempStorArr" --just
> in case
> set the customproperties of this stack to empty ---purge the
> properties
> end dotest
>
>
> On TestIt pName, pInt
> set the pName of this stack to pInt
> --use the array values for any other purpose
> --and can be used in any other handlers called in the message path
>
> answer the pName of this stack
> --save this stack -- the array is now saved with the stack file
> end TestIt
>
> ----------- end copy script lines
>
> Jim Ault
> Las Vegas
>
>
> On 6/26/08 1:21 PM, "Mark Wieder" <mwieder at ahsoftware.net> wrote:
>
>> Jim-
>>
>> Or, more generically,
>>
>> (button script)
>> on mouseUp
>> local tMyArray
>> local tName, tValue
>>
>> -- insert sample data
>> put 42 into tMyArray["Vera"]
>> put 42 into tMyArray["Chuck"]
>> put "Dave" into tName
>> put 123 into tValue
>> combine tMyArray using cr and tab
>> send "TestIt tMyArray, tName, tValue" to this stack
>> put the result into tMyArray
>> split tMyArray using cr and tab
>> -- verify the test
>> put the keys of tMyArray into field 1
>> end mouseUp
>>
>> (stack script)
>> on TestIt pArray, pName, pInt
>> split pArray using cr and tab
>> put pInt into pArray[pName]
>> combine pArray using cr and tab
>> return pArray
>> end TestIt
>>
>> ...and thanks for the tip. This is way useful.
>
>
> _______________________________________________
> use-revolution mailing list
> use-revolution at lists.runrev.com
> Please visit this url to subscribe, unsubscribe and manage your
> subscription preferences:
> http://lists.runrev.com/mailman/listinfo/use-revolution
More information about the use-livecode
mailing list