cs_spoutch
Messages postés10Date d'inscriptionmercredi 27 août 2008StatutMembreDernière intervention 5 septembre 2013
-
9 oct. 2008 à 20:04
cs_Girou
Messages postés1203Date d'inscriptionlundi 10 mars 2003StatutMembreDernière intervention23 juillet 2009
-
10 oct. 2008 à 09:15
AS2 -> AS3 = ARG!!!!!
je m'explique:
Je
cherche a récuper les donné charger par un fichier php dans une base de
donné dans mon flash. Le php affiche par un echo la chaine de caractère
suivante:
var urlLoader:URLLoader = new URLLoader();
urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
var urlRequest:URLRequest = new URLRequest("process.php");
urlLoader.addEventListener(Event.COMPLETE, donneesChargees);
urlLoader.load(urlRequest);
var pouet: String;
function donneesChargees(e:Event):void
{
var ACTUALITE:Object = new Object;
ACTUALITE["nom"] = new Array;
for (var i=0; i <= e.target.data.NbAct ; i++)
{
this.ACTUALITE["nom"][i]= e.target.data["NomActu"+i]
}
this.gotoAndStop(2);
}
stop();
var urlLoader:URLLoader = new URLLoader();
urlLoader.dataFormat = URLLoaderDataFormat.VARIABLES;
var urlRequest:URLRequest = new URLRequest("process.php");
urlLoader.addEventListener(Event.COMPLETE, donneesChargees);
urlLoader.load(urlRequest);
var pouet: String;
function donneesChargees(e:Event):void
{
var ACTUALITE:Object = new Object;
ACTUALITE["nom"] = new Array;
for (var i=0; i <= e.target.data.NbAct ; i++)
{
this.ACTUALITE["nom"][i]= e.target.data["NomActu"+i]
}
this.gotoAndStop(2);
}
stop();
a l'image 2, je récupère dans un texte dynamique la valeur de this.ACTUALITE["nom"][0]
Au départ, il n'alais pas a l'image 2, je me disais que c'était parce qu'il ne rentrai pas dans la fonction donneesChargees.
J'ai
remplacé l'objet ACTUALITE par une simple variable, récuperant
e.target.data["NomActu"+0]. cette fois il va bien a l'image deux, mais
la variable ne vaut rien. et si je met une chaine de caractère
quelconque, il ne la retourne pas non plus a l'image 2.
Si a l'image
une, je cherche a récupe la valeur de e.target.data["NomActu"+i] dans
un champ texte a l'interieur de la fonction, le
champ texte ne vaut rien, par contre, si je met une chaine de Caract quelconque, il me l'affiche bien.
DONC!!
pour résumer:
_Si je crée mon objet ACTUALITE dans la fonction donneesChargees, il ne rentre pas dedans.
_dans le cas d'une simple variable, il rentre bien dans la fonction, mais:
impossible de récup la valeur de e.target.data["NomActu"+0] (ou d'une autre variable du php
impossible
de récup la valeur d'une variable a l'interieur de la fonction depuis
une autre image (sachant qu'il va a cette autre image quand les donnes
son charger)
autre indice: si je récupe la valeur de
txt.text=(e.target as URLLoader).data, il me renvoi bien la chaine de C
générer par le php, mais il rajoute des % un peut n'importe ou et
remplace les caractère comme / par des F10 ou des truck comme sa. c'est
normal sa?
cs_Girou
Messages postés1203Date d'inscriptionlundi 10 mars 2003StatutMembreDernière intervention23 juillet 20092 10 oct. 2008 à 09:15
Salut,
va voir 76730 ce post qui traite du même sujet, tu trouveras les explications completes pour la récupération des variables envoyées depuis php
Autre choses
var ACTUALITE:Object = new Object;
ACTUALITE["nom"] = new Array;
devrait être plutot
var ACTUALITE:Object = new Object () ;
ACTUALITE.nom = new Array();
et effectivement, sort ta variable ACTUALITE de ta fonction, comme tu le propose dans ton script, la portée de la variable est limitée à la fonction donneesChargees() et donc non accessible en dehors de la fonction