http_build_query() and URLRequest - an annoying problem


I’m working to gain some proficiency in communicating flash and php. I recently found this nice method to feed variables from php into flash.

I’m using http_build_query() function in a php file to send some variables like this:

$users = mysql_query("SELECT * FROM users WHERE uid=666");
$ua = mysql_fetch_array($users);

$vars = array();

$vars['user_id'] = $ua[0]; //should be 666
$vars['pet_id'] = $ua[1]; //should be 777
$vars['cash'] = $ua[2]; //should be 120
$vars['advicepoints'] = $ua[3]; //should be 5
$vars['AP'] = $ua[4]; //ahould be 100
$vars['timestamp'] = $ua[5]; //should be 1242291847078
$vars['income'] = $ua[6]; //should be 24
$vars['attractiveness']= $ua[7]; //should be 14

$returnString = http_build_query($vars);
echo $returnString;

It gives a nice and expected output in the browser:


Then in flash I grab those variables using:

var request:URLRequest = new URLRequest("http://localhost/~sandbox/send_data.php");
            request.method = URLRequestMethod.GET;
            var loader:URLLoader = new URLLoader();
                loader.dataFormat = URLLoaderDataFormat.VARIABLES;
                loader.addEventListener(Event.COMPLETE, completeHandler);
                function completeHandler(evt:Event) {
                    trace (;

The output of trace is not so obvious and expected (at least to me):


First of all the order of the output is a mystery to me. It’s not in alphabetical order, it’s not in numerical order and FIRST OF ALL it’s not in the order i’ve put it :confused: (but that also happened to me when i was trying out multiple flashVars, so i just assume, that’s just Adobe idea for a joke… :wink: ).

EDIT - oh, i’ve noticed, that this order IS vurnerable to changes. However those are equally uncomprehensible to me as well

Second - the misterious “%20” (space?!?) before uid var. Now how did you get there “%20” and why do i get the feeling you are my problem?!?

And finally when i trace all the variables<var name> only uid comes as undefined…

And the last sentence more or less wraps up my problem. How the heck can i trace uid(and later do more unmoral things with it)?

Oh please, oh please help me kirupa forum :slight_smile: