I'm trying to build a class that maps to a php class. The trouble is - I can trace() the variables i need, but if i instantiate the object within flash, the object methods dont return the values retrieved. I imagine this is an asynchronous issue - but i am totally stuck. Here's an example:

Code:
package {
import flash.net.URLLoader;
import flash.net.URLRequest ;
import flash.net.URLRequestMethod;
import flash.net.URLVariables;
import flash.net.URLLoaderDataFormat;
import flash.display.Sprite;
import flash.events.*;
import flash.net.*;
import flash.utils.*;



//import flash.xml;


  public class User extends Sprite  {

  private var _user_id:uint;
  private var _user_name:String;
  private var _password:String;
  //temp
  private var _textfield:TextField;



  public function User(cvalue=0) {
   _user_id = cvalue;
   readfromdb();
  }

  public function setuserid(xvalue:uint):void {
   _user_id = xvalue;
  }

  public function getuserid():uint {
   return _user_id;
  }

  public function setusername(xvalue:String):void {
   _user_name = xvalue;
  }

  public function getusername():String {
   if(_user_name == null){
    _user_name = "";
   }
   return _user_name;
  }

  public function setuserpassword(xvalue:String):void {
   _password = xvalue;
  }

  public function getuserpassword():String {
   if(_password == null){
    _password = "";
   }
   return _password;
  }
  

  


  public function readfromdb():void{


   var loader:URLLoader = new URLLoader();
   loader.addEventListener(Event.COMPLETE, xmlLoaded);
	


   var srequest:URLRequest = new URLRequest();
   srequest.method = URLRequestMethod.POST;
   srequest.url = "http://localhost/flash_php_class_test/test.php";

   var variables:URLVariables = new URLVariables("userid="+_user_id);
   srequest.data = variables;
	loader.load(srequest);
   
  
	
	
  }
  
  public function xmlLoaded(e:Event) {
		_user_name = e.target.data;

  }


}
}
I really hope someone can help me...