Código:
public function alta():void{ var loader:URLLoader = new URLLoader(); loader.addEventListener(Event.COMPLETE, eventoAlta); var url:String = "http://www.midominio.com/alta.php?nocache=" + new Date().getTime(); var request:URLRequest = new URLRequest(url); var variables:URLVariables = new URLVariables(); //Se le asignan a este objeto las propiedades del usuario. variables.usuario = this.__usuario; variables.password = this.__password; request.data = variables; request.method = "POST"; loader.load(request); } private function eventoAlta(event:Event):void{ var variables:URLVariables = new URLVariables(event.target.data); trace("El usuario: " + variables.usuario + " ha sido dado de alta."); }
y mi php guarda el usuario en la base de datos y para comprobar el envío y recibo de variables pues le digo que me devuelva el usuario que ha recibido y aquí es donde están las cosas raras, ya que si pongo un echo como hacia antes (echo &variable=nosequé) pues la variable no la recibe flash, solo la recibe cuando pongo todas las variables en una cadena y pongo una variable de basura delante de la primera que quiero recibir. Fijaos que quiero recibir la variable usuario pero la primera de la cadena es filas que no la quiero para nada (en la función eventoAlta de flash solo muestro el usuario). el php es el siguiente:
Código PHP:
include 'conexion.php';
// recibe
$usuario=$HTTP_POST_VARS[usuario];
$password=$HTTP_POST_VARS[password];
$resultado=mysql_query("SELECT ....'",$Connect);
$filas=mysql_num_rows($resultado);
//si hay 0 filas, el usuario no existe y lo grabo
$cadena="";
$cadena=$cadena . "filas=" . $filas;
if ($filas<=0)
{
$altaoperador = mysql_query("INSERT ...) VALUES (...)",$Connect);
$cadena=$cadena . "&usuario=" . $usuario;
$cadena=$cadena . "&abierto=si";
}
else
{
$cadena=$cadena . "&abierto=no";
}
echo $cadena;
Si alguien maneja esto y sabe una forma más simple pues le estaría agradecido, porque no sé si es fallo de php o es que esto tiene que ser asi o qué. Saludos.