Carga de variables php en actionscript 3
Buenas, tengo un problema muy recalcitrante con una página web que estoy desarrollando en mi trabajo, me tiene bastante atascado y hasta que no lo solucione no puedo seguir, lo peor es que el fallo tiene que ser una chorrada, a ver si los expertos me podéis echar una mano.
El caso es que tengo que recoger una variable en un documento de as3, pero no consigo hacerlo ni en lo más básico.
El código php sería más o menos así:
<?php
echo "nombre=Gonzalo";
?>
El código as3 sería de esta manera:
import flash.display.Sprite;
import flash.net.*;
import flash.net.sendToURL;
var req:URLRequest=new URLRequest("http://127.0.0.1/gamebaloo/pruebas/prueba.php");
var loader:URLLoader = new URLLoader();
loader.dataFormat=URLLoaderDataFormat.VARIABLES;
loader.load(req);
loader.addEventListener(Event.COMPLETE, loadCompleteHandler);
function loadCompleteHandler(event:Event):void {
var variable:URLVariables=new URLVariables(event.target.data);
var nombre = String(variable.nombre);
title_text.text = nombre;
}
stop();
Al probar el .swf en mi servidor local, me dice que el valor del texto es indefinido (undefined). Sin embargo, es mosqueante, porque si cambio la ruta a un documento de texto (.txt) sí que me recoge el valor que tenga allí escrito, por lo que el fallo está al leer el php.
Me juego mucho con esto, cualquier ayuda es bienvenida.
Gracias.
Gonzalo.
mararchs
Hola, veo que el post es de hace mucho tiempo pero a ver si me puede ayudar.
Como solucionó la connexion del php con AS3?
prove el codigo identico de este post pero no consigo que flash lea el php
Tengo un php que en hostinger si que me lee los datos de la base de datos que tengo creada en phpmyadmin. Hasta ahí ningun problema
pero no hay manera que flash me lea estos datos
var req:URLRequest=new URLRequest("http://marapps.esy.es/getScoresprovaMar.php");
var loader:URLLoader = new URLLoader();
loader.dataFormat=URLLoaderDataFormat.VARIABLES;
loader.load(req);
loader.addEventListener(Event.COMPLETE, loadCompleteHandler);
function loadCompleteHandler(event:Event):void {
var variable:URLVariables=new URLVariables(event.target.data);
var missatge= String(variable.missatge); //"missatge" es una variable que tengo en el php ($missatge)
title_text.text = missatge;
}
Gracias
gonzalol
Muchas gracias por tu respuesta, Cesar.
La verdad que durante el día he ido desarrollándolo y el problema no parece estar en ese fallo que me comentas, pero lo cambiaré por si acaso; es posible que haya encontrado una solución, si es así, lo escribiré por aquí por si alguien se encontrara con el mismo problema.
csardelacal
Hola,
siento no poder ayudarte 100%, pero he visto alguna cosa que me llama la atención. Por que defines el Handler despues de añadir el eventListener.
En JavaScript existe la curiosa propiedad de que (en IE) el onload no se dispara si el resultado esta cacheado de alguna manera. En ese caso (y esto es JS puro y duro) necesitas hacer algo así:
addEventListener('load', listener); //Lo que sea
attachEvent('onload', listener'); //Para IE < 9
if (el.complete) listener(); //Para IE con cache
Falta algun if pero creo que se ve la idea.
Espero haberte poder ayudado de alguna forma.