
Toi desarrollando una aplicación en flash que accede a una base de datos en MySQL. Para ello me sirvo de PHP e utilizo el objeto LoadVars de Flash para comunicarme con PHP. La parte de PHP y MySql dominada y flash a medias, los ejemplos leidos sobre este tema en la web me han ayudado bastante.

Ahora el problema que tengo es de direccionamiento, para modularizar la aplicacion de flash se me ocurrio la idea de crearme una clase en flash que recogiese los metodos y propiedasdes necesarias para la comunicacion con la bbdd. Que para que de esta manera con una linea de codigo en flash fuera capaz (de hacer un login/dar de alta un usuario/la baja del mismo/ etc..)
A ver sin usar la clase he conseguido que funcionase, pero me interesa poder usar la clase para ahorrame lineas de codigo y legibilidad del mismo. También por que asi con la clase creada su posterior uso para otros proyectos.
Aqui os pongo un poco del codigo de la clase:
Código :
class IO { //--------------------------Declaracion de variables // //Referentes a la url del servidor // var host : String; //se almacena la direccion del servidor var fauser : String; //almacena el nombre del fichero alta usuario var fbuser : String; //almacena el nombre del fichero baja usuario var fiuser : String; //almacena el nombre del fichero info usuario var fliuser : String; //almacena el nombre del fichero listar usuarios var fluser : String; //almacena el nombre del fichero login usuario // //Referentes al estado de la comunicacion // var envio : Object; //encargada del envio/recpcion Info var error : Boolean; //indica si se ha producido algun error var errmsg : String; //contiene el texto del error producido var estado : String; //informa sobre el estado de la comunicacion var txrx : Boolean; //Se activa cuando esta enviando o recibiendo nfo // //Referentes a la tabla de usuarios // var unombre : String; //nombre usuario actual var uapellidos :String; //apellidos usuario actual var ulicencia : String; //numero licencia usuario actual var uid : Number; //identificador del usuario var ulogin : Boolean; //checkea si se ha hecho un login var ulista : String; //lista de usuarios [buscar declarecion array] var uerr : Number; //informa si se ha producido algun error //----------------------Declaracion del constructor // // Aqui inicializamos las variables de configuracion // de la clase y estado function IO () { this.host = "http://127.0.0.1/PFC%20(www)/"; this.fauser = "nuevo_usuario.php"; this.fbuser = "baja_usuario.php"; this.fiuser = "info_usuario.php"; this.fliuser = "listar_usuarios.php"; this.fluser = "login.php"; this.flpos = "leer_posicion.php"; this.fepos = "escribir_posicion.php"; this.fapalo = "alta_palo.php"; this.fbpalo = "baja_palo.php"; this.fipalo = "info_palo.php"; this.flpalo = "listar_palos.php"; this.flesta = "leer_estadistica.php"; this.feesta = "escribir_estadistica.php"; this.ulogin = false; this.error = false; this.txrx = false; this.errmsg = ""; this.estado = "A la Espera"; } //----------------------Metodos // // // Referentes a la tabla usuarios // function alta_usuario (nombre : String , apellidos : String, licencia : String ) { //construimos la direccion URL del fichero php var cadena : String; cadena = this.host + this.fauser; //inicializamos la variable de envio this.envio = new LoadVars(); //asignamos los parametros a enviar this.envio.N = nombre; this.envio.A = apellidos; this.envio.L = licencia; //Lo que hacemos cuando recibamos la info this.envio.onLoad = function() { this.estado = "Reciviendo Información..."; this.uerr = this.err; //generamos informe de errores if (this.uerr != 0) { this.error = true; } switch (this.uerr){ case "0" : this.errmsg = "Usuario dado de alta."; break; case "1" : this.errmsg = "ERR : El usuario ya existe."; break; case "2" : this.errmsg = "ERR : Informacion entrada incorrecta."; break; case "3" : this.errmsg = "ERR : No se puedo realizar la conexion con la BBDD."; break; } this.estado = "Comunicacion realizada." this.txrx = false; trace (this.errmsg); trace (this.estado); trace (this.txrx); nextFrame(); } //realizamos el envio this.estado = "Enviando Información Alta Usuario..."; this.txrx = true; this.envio.sendAndLoad(cadena, envio, "POST"); }
A ver el problema es el siguiente, en la funcion Onload del objeto loadvars, me quiero referir a las propiedades de la clase : estado, uerr, error, errmsg, txrx. Pero claro como el identificador this dentro de esta funcion se refiere al objeto Loadvars (vease que this.err es lo que nos devuelve el fichero de php, vamos es el codigo de error producido en la comunicacion). Mi pregunta es como hago para referirme a las propiedades nombradas, dentro de esta funcion.