CHARGEMENT DE VARIABLES EXTERNES AVEC LOADVARS SIMPLEMENT
romagny13
Messages postés687Date d'inscriptionlundi 10 janvier 2005StatutMembreDernière intervention27 août 2014
-
19 mai 2006 à 01:05
stefbuet
Messages postés576Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention12 mai 2009
-
10 oct. 2009 à 21:30
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.
stefbuet
Messages postés576Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention12 mai 2009 10 oct. 2009 à 21:30
Tu dis n'importe quoi.
Déjà je n'ai pas fait d'erreur. Ensuite tu viens de poster un code complètement HS : J'ai dis dans mon message précèdent que Loader et URLLoader étaient bien différents. Tu viens d'utiliser Loader qui est un élément graphique permettant de charger des swf, images et de les afficher à l'écran... J'ai utilisé, et c'est ce que tu dois faire, un objet URLLoader, qui te permet de charger du contenu sous forme de texte, variables, ou binaire via des BytesArrays, dans ton cas c'est le mode texte (par Default) dont tu a besoin.
Stef.
archynet
Messages postés8Date d'inscriptionlundi 25 août 2003StatutMembreDernière intervention10 octobre 2009 10 oct. 2009 à 19:27
Salut Stef,
Merci pour l'aide, ça m'a aidé à m'y mettre, du coup j'ai regardé les sources par ci par là car je captais pas trop ou tu t'étais gourré, j'suis arrivé à un exemple qui semble "pro" mais qui fonctionne pas du tout.
La raison essentielle est qu'il semblerait que cette méthode ne fonctionne que pour les bitmap, en fait il me donne la même erreur que si je tentais de charger un pdf :
[IOErrorEvent type="ioError" bubbles=false cancelable=false eventPhase=2 text="Error #2124: Le type du fichier chargé est inconnu. URL: file:///C|/SITE/HKStudio/about.txt"]
Voici mon code, j'ai l'impression qu'il me faut une autre méthode pour charger du simple txt.
import flash.net.*;
import flash.events.Event;
// création du chargeur
var chargeur:Loader = new Loader();
// référence à l'objet LoaderInfo
var cli:LoaderInfo = chargeur.contentLoaderInfo;
// écoute des événements liés au chargement
cli.addEventListener( Event.OPEN, debutChargement );
cli.addEventListener( Event.INIT, initialisation );
cli.addEventListener( ProgressEvent.PROGRESS, chargement );
cli.addEventListener( Event.COMPLETE, chargementTermine );
cli.addEventListener( IOErrorEvent.IO_ERROR, echecChargement );
cli.addEventListener( HTTPStatusEvent.HTTP_STATUS, echecHTTP );
cli.addEventListener( Event.UNLOAD, suppressionContenu );
// url à atteindre
var maRequete:URLRequest = new URLRequest("about.txt");
//var maRequete:URLRequest = new URLRequest("http://www.reekoch.org/hkagency/about.txt");
// chargement du contenu
chargeur.load(maRequete);
stefbuet
Messages postés576Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention12 mai 2009 10 oct. 2009 à 12:50
Juste : je me suis trompé pour la ligne de l'écouteur d'évènement, c'est loader.addEventListener(...) et pas url.contentLoaderInfo.addEventListener(...) (double faute : j'ai tapé url par inattention au lieu de loader + j'ai confondus Loader et URLLoader :D )
Voila ;)
stefbuet
Messages postés576Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention12 mai 2009 10 oct. 2009 à 12:47
Pour ce qui est de l'AS3:
import flash.net.*;
import flash.events.Event;
var loader:URLLoader=new URLLoader();
var url:ULRequest=new URLRequest("about.txt");
url.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded);
loader.load(url);
function onLoaded(e:Event):void {
trace(e.target.data);
//affiche ton fichier txt en console de sortie
}
archynet
Messages postés8Date d'inscriptionlundi 25 août 2003StatutMembreDernière intervention10 octobre 2009 10 oct. 2009 à 10:56
J'ai même téléchargé PSpad spécialement pour re-encoder mes fichiers txt. J'y ai cru, mais rien à faire. J'utilise effectivement de l'as2 j'ai beau changer la version du player rien n'y fait. Je pense que ça viens de la variable puis que j'ai du code qui apparait, ça m'aiderai au moins de savoir si ce code fonctionne chez vous si quelqu'un peu l'essayer.
Si ya une version relativement simple et compréhensive en AS3 j'suis preneur, j'ai tenté de m'y mettre mais c'est vraiment un autre monde pour le moment j'trouve.
Du coup j'ai opté passagèrement pour la version Flash6 AS1 avec un vieux loadVariableNum("","") Bon ça a l'avantage de fonctionner.
Voilà merci pour l'aide en tout cas.
archy
stefbuet
Messages postés576Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention12 mai 2009 8 oct. 2009 à 18:06
Salut,
regardes du coté de l'encodage du fichier txt pour le problème des %20.
Pour ce qui est du code à la fin, ça me fait penser à des variables envoyées par Flash lorsqu'il charge une page avec une requête GET et non POST. Ne faisant plus d'AS2 je ne pourra pas trop t'éclaircir sur ce point.
PS : tu utilises bien de l'AS2?
Stef.
archynet
Messages postés8Date d'inscriptionlundi 25 août 2003StatutMembreDernière intervention10 octobre 2009 8 oct. 2009 à 12:20
Bonjour j'ai tenté d'utiliser le petit bout de code inscrit dans : LoadVars très simple.txt pour charger du texte simple donc...Ca fonctionne à l'exception que ça me fou des %20 partout dans le texte chargé et en plus ça me met du code à la fin genre : %2E=&onLoad=%5Btype%20Function%5D
Voici ce que j'utilise
chargeur = new LoadVars();
chargeur.load("about.txt");
chargeur.onLoad = function(charge) {
if (charge=!undefined) {
trace("data loaded !");
contener.champ_text.text;
contener.champ_text.htmlText = chargeur;
contener.gotoAndPlay("on");
} else {
trace("error_textload");
}
};
Une idée ?
MAZALEYRAT
Messages postés16Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention23 janvier 2008 23 janv. 2008 à 09:02
Et bien un grand merci sincère pour toutes ces explications ! ...je vais maintenant essayer de "digérer" tout ça mais suis convaincu d'être sur la bonne piste. Félicitations !
J'aimerai dire "à charge de revanche"... rire, mais là je suis un peu moins certain d'être à la hauteur.
stefbuet
Messages postés576Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention12 mai 2009 22 janv. 2008 à 19:19
Salut, c'est normal que tu ne puisses pas retrouver tes variable en dehors de la fonction car une variable créé dans un bloc n'est disponible que dans ce bloc, ensuite elle est suprimmée.
Tu peut donc utiliser plusieurs astuces pour acceder à tes variables en dehors de la fonction onLoad :
I) Tu peut les déclarer en global :
_global.variable1=A1.valeur1;
pour l'utiliser par la suite tu devras utiliser tout le temps le prefixe _global :
trace(_global.variable1);
-Tu peut utiliser _root (la racine de l'animation) mais attention cette technique est à double tranchants : Si l'animation qui utilise _root est chargée dans une autre animation, _root n'aura plus la valeur de la racine de l'animation chargée, mais de celle qui la charge... Si l'animation est seule, tu peux utiliser _root sans problème :
Même chose qu'avec _global, mais avec _root :
_root.variable1=A.valeur1;
trace(_root.variable1);
Pour finir, tu peut appeler une fonction annexe qui se chargera de faire ce que tu veux. Par exemple si tu veux simplement afficher les infos dans la console de l'API de Flash il te suffira de faire :
function afficher(var1, var2) {
trace(var1);
trace(va2);
}
Bien sûr, la fonction afficher n'est qu'un exemple. Tu pourrais donc créer une fonction afficherBoutons() qui se chargerait de créer des copies d'un clip pour créer des boutons et leurs attribuer des fonctions en fonction des données du fichier texte...
Mais si tu a besoin des informations tout au long de ton programme, alors tu sera obligé de recourir au _root ou _global sauf si tu utilise la dernière solution que voici :
Une dernière solution : Comme dit plus haut, une variable est disponible dans le bloc ou elle à été déclarée. Tu pourrais donc aussi déclarer tes variables en dehors de la fonction onLoad pour pouvoir y acceder par la suite en dehors de la fonction :
Note : les variables variable1 et variable2 sont de type String car les données renvoyés par la class LoadVars sont des String, même si on met dans le fichier txt :
&variable=15
la valeur de A1.variable="15"(String) et non 15 (Number)
Voilà, j'espère avoir répondu à ta question,
Stefbuet
MAZALEYRAT
Messages postés16Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention23 janvier 2008 22 janv. 2008 à 09:57
Bonjour ! ...apparemment vous maitrisez parfaitement bien la fonction LoadVars... et c'est bien là que réside mon problème du moment. Je butte très certainement sur un tout petit détail mais ça me prend la tête depuis pas mal de temps déjà et je baisse les bras !
En clair : sur la première frame j'utilise la collection d'instructions classiques pour lire un fichier de type .txt, cette lecture se fait dans une fonction.
Sur la deuxième frame, donc en dehors de la fonction, je veux utiliser une des variables lue dans la première frame... et bien impossible, ma variable ne "sort" pas de la fonction.
Mon code :
Frame 1 :
A1 = new LoadVars();
A1.load("http://www.............../monfichier.txt); // Mon fichier texte comprend : &valeur1="toto" & valeur2="zaza"
A1.onLoad = function(success) {
if (success) {
variable1 = A1.valeur1;
variable2 = A1.valeur2;
}
trace(variable1); // et ça affiche toto sans probleme
trace(variable2); // et ça affiche zaza sans probleme
}
Frame 2 :
trace(variable1); // et ça affiche "undefined"
trace(variable2); // et ça affiche "undefined"
En d'autres termes, mes variables ne sont disponibles qu'à l'intérieur de la fonction qui lit le fichier texte.
Mon but : pouvoir utiliser les variables ailleurs .... est ce possible ?
MERCI POUR VOTRE ATTENTION ET VOTRE COLLABORATION !
MAZALEYRAT
Messages postés16Date d'inscriptionjeudi 13 février 2003StatutMembreDernière intervention23 janvier 2008 22 janv. 2008 à 09:40
Bonjour.... je n'arrive pas à ouvrir votre .fla sous MX .... est ce normal ?
Improve
Messages postés176Date d'inscriptionmardi 27 novembre 2007StatutMembreDernière intervention28 novembre 2009 27 nov. 2007 à 22:31
Bien ton source. Bon d'accord que je me suis retrouvé à mes débuts avec 'Mx' quoique j'ai chargé la version CS3. Mais c'est un retour accepté parce que j'avais mis de côté les multiples possibilités de ce genre de chargement des données.txt. Merci.
stefbuet
Messages postés576Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention12 mai 2009 14 nov. 2007 à 16:25
J'ai refait la source completement afin d'utiliser la class LoadVars, et proprement.
stefbuet
Messages postés576Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention12 mai 2009 24 juin 2006 à 23:01
oai en fait il suffi d'enregistrer le fichier txt en unicode
stefbuet
Messages postés576Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention12 mai 2009 31 mai 2006 à 14:10
oui, il est possible de réunnir les fichiers txt en 1 seul fichier txt, tu doi simpelment mettre :
il suffi juste de rajouter un & entre les variables dans le fichier texte tel que par exemple :
code txt :
&10/04/06 cet%20Appartement%20n'est%20pas%20disponible%20pour%20le%20moment%20!!%20desolé%20!!&11/04/05 ce%20appart%20est%20libre%20&11/04/05= ect...%20ect...20
sinon au niveau des espace, je ne sais pas essaye de decoche le trasformer en version html moi j'ai pas tro le temps et di moi ce que tu trouve...
lolycatz
Messages postés14Date d'inscriptionlundi 24 octobre 2005StatutMembreDernière intervention 2 septembre 2008 31 mai 2006 à 12:04
Je n'arrive pas à faire marcher le flash là, je ne trouve pas info.txt dans le zip.
Dis, et si tu met les codes comme ça: si tu decoche l'option "mettre les textes au format html" dans les propriétes de la zone de text dynamique, je suis sure que ca pourrait marcher sans avoir a mettre %20 pour les espaces (et eventuellement tu sauve le .txt en UTF8 pour les caracteres accentués).
Essaye pour voir et dis moi si ca marche...
Autre chose tu crois qu'il serait possible de rassembler tous les fichiers text dans 1 seul ce serait plus pratique non... c'etait ce que je voulais faire mais je n'ai pas reussi?
Dis moi ce que tu en penses!!!
Loly
stefbuet
Messages postés576Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention12 mai 2009 31 mai 2006 à 08:13
je veux bien mais dans ton cas il y a un prob : dans le fichier txt, a chaque fois que tu voudra changer le fichier texte, il ne sufirapas de faire un copier coller, en effet, il ne doit pas y avoir d'espace, les espace sont remplacer par %20.
cela donne :
dispo = bonjour%20les%20apparts%20de%cette%20date%20ne%20sont%20pas%20libre%20pour%20cette%20date%20!!!
il ne faudra pas modifier le premier mot : diso = .
pence tu que tes parent pourons faire cela ? :-)
si oui alors si tu veux je pourrais tla faire :-)
lolycatz
Messages postés14Date d'inscriptionlundi 24 octobre 2005StatutMembreDernière intervention 2 septembre 2008 25 mai 2006 à 17:01
yep exactement... desolee j'etais pas tres claire, un peu overdosée de codes sans doute ;o).
imagine que tu veux reserver une location saisonniere et tu veux verifier la disponibilité de tes dates avant de contacter les propriétaire.la location se faisant a la semaine du samedi au samedi, l'utilisateur choisi une semaine (ex : du 27 mai au 3 juin 2006) et un message s'affiche pour dire si le studio est disponible ou deja reserve pour la date en question.
J'avais deja trouvé une source similaire mais en PHP et mes parents sachant a peine faire un copier coller je trouvais cela plus pratique pour eux de mettre les infos sur un fichier texte comme ca ca limite les erreures et c'est updaté en 2 sec.
Seul probleme je n'arrive pas a le faire moi meme alors je cherchais une ame charitable qui veuille bien me montrer... voila tu sais tout! si tu peux m'aider ce serait super cool!
lolycatz
stefbuet
Messages postés576Date d'inscriptionmercredi 5 janvier 2005StatutMembreDernière intervention12 mai 2009 25 mai 2006 à 16:22
j'ai pas trés bien compris ce que tu voulais ? une combo box avec des dates, et quand on clique sur une des dates affichés, sa affiche soit occupé ou soit libre ??
lolycatz
Messages postés14Date d'inscriptionlundi 24 octobre 2005StatutMembreDernière intervention 2 septembre 2008 24 mai 2006 à 19:57
ps: suis sous flash mx
;o)
thanks
lolycatz
Messages postés14Date d'inscriptionlundi 24 octobre 2005StatutMembreDernière intervention 2 septembre 2008 24 mai 2006 à 19:56
Salut,
Dis moi, tu pourrais m'aider a faire la meme chose mais avec une combo box contenant un max de dates correspondant à un message : "diponible" ou "déja reservé".
Je t'explique mes parents ont des chambres d'hotes qu'ils louent a la semaine et cela leur serait tres utile pour leur site, la gestion des reponses en .txt aussi compte tenu que ce sont des breles totales en informatiques alors le php j'oublie tout de suite.
Si tu peux m'aider, te casse pas la tete pour les dates mais en juste quelques unes et je completerai, je suis vraiment debutante mais si on me montre l'exemple je pense que je saurais faire...
Merci
cs_bali_balo
Messages postés1378Date d'inscriptionsamedi 9 octobre 2004StatutMembreDernière intervention 1 novembre 20101 19 mai 2006 à 13:52
le %20 c'est pour les espaces dans un attribut
Tu ne peut pas faire par exemple :
age=18 ans&prenom=bali balo
Il faut faire :
age=18%20ans&prenom=bali%20balo....etc...etc
Je verais plus tard la source, la chui au boulot et j'ai que flash MX ^^
bali_balo....=]
romagny13
Messages postés687Date d'inscriptionlundi 10 janvier 2005StatutMembreDernière intervention27 août 20143 19 mai 2006 à 01:05
waii, jai pas compris pk tu mets le %20
age=17%20ans
10 oct. 2009 à 21:30
Déjà je n'ai pas fait d'erreur. Ensuite tu viens de poster un code complètement HS : J'ai dis dans mon message précèdent que Loader et URLLoader étaient bien différents. Tu viens d'utiliser Loader qui est un élément graphique permettant de charger des swf, images et de les afficher à l'écran... J'ai utilisé, et c'est ce que tu dois faire, un objet URLLoader, qui te permet de charger du contenu sous forme de texte, variables, ou binaire via des BytesArrays, dans ton cas c'est le mode texte (par Default) dont tu a besoin.
Stef.
10 oct. 2009 à 19:27
Merci pour l'aide, ça m'a aidé à m'y mettre, du coup j'ai regardé les sources par ci par là car je captais pas trop ou tu t'étais gourré, j'suis arrivé à un exemple qui semble "pro" mais qui fonctionne pas du tout.
La raison essentielle est qu'il semblerait que cette méthode ne fonctionne que pour les bitmap, en fait il me donne la même erreur que si je tentais de charger un pdf :
[IOErrorEvent type="ioError" bubbles=false cancelable=false eventPhase=2 text="Error #2124: Le type du fichier chargé est inconnu. URL: file:///C|/SITE/HKStudio/about.txt"]
Voici mon code, j'ai l'impression qu'il me faut une autre méthode pour charger du simple txt.
import flash.net.*;
import flash.events.Event;
// création du chargeur
var chargeur:Loader = new Loader();
// référence à l'objet LoaderInfo
var cli:LoaderInfo = chargeur.contentLoaderInfo;
// écoute des événements liés au chargement
cli.addEventListener( Event.OPEN, debutChargement );
cli.addEventListener( Event.INIT, initialisation );
cli.addEventListener( ProgressEvent.PROGRESS, chargement );
cli.addEventListener( Event.COMPLETE, chargementTermine );
cli.addEventListener( IOErrorEvent.IO_ERROR, echecChargement );
cli.addEventListener( HTTPStatusEvent.HTTP_STATUS, echecHTTP );
cli.addEventListener( Event.UNLOAD, suppressionContenu );
// url à atteindre
var maRequete:URLRequest = new URLRequest("about.txt");
//var maRequete:URLRequest = new URLRequest("http://www.reekoch.org/hkagency/about.txt");
// chargement du contenu
chargeur.load(maRequete);
function contenuCharge( pEvt:Event ):void {
trace( pEvt );
}
// ajout à la liste d'affichage
addChild( chargeur );
function debutChargement( pEvt:Event ):void {
// affiche : [Event type="open" bubbles=false cancelable=false eventPhase=2]
trace( pEvt );
}
function initialisation( pEvt:Event ):void {
// affiche : [Event type="init" bubbles=false cancelable=false eventPhase=2]
trace( pEvt );
}
function chargement( pEvt:ProgressEvent ):void {
// affiche : [ProgressEvent type="progress" bubbles=false cancelable=false eventPhase=2 bytesLoaded=0 bytesTotal=5696]
trace( pEvt );
}
function chargementTermine( pEvt:Event ):void {
// affiche : [Event type="complete" bubbles=false cancelable=false eventPhase=2]
trace( pEvt );
}
function echecChargement( pEvt:IOErrorEvent ):void {
trace( pEvt );
}
function echecHTTP( pEvt:HTTPStatusEvent ):void {
trace( pEvt );
}
function suppressionContenu( pEvt:Event ):void {
// affiche : [Event type="unload" bubbles=false cancelable=false eventPhase=2]
trace( pEvt );
}
10 oct. 2009 à 12:50
Voila ;)
10 oct. 2009 à 12:47
import flash.net.*;
import flash.events.Event;
var loader:URLLoader=new URLLoader();
var url:ULRequest=new URLRequest("about.txt");
url.contentLoaderInfo.addEventListener(Event.COMPLETE, onLoaded);
loader.load(url);
function onLoaded(e:Event):void {
trace(e.target.data);
//affiche ton fichier txt en console de sortie
}
10 oct. 2009 à 10:56
J'ai même téléchargé PSpad spécialement pour re-encoder mes fichiers txt. J'y ai cru, mais rien à faire. J'utilise effectivement de l'as2 j'ai beau changer la version du player rien n'y fait. Je pense que ça viens de la variable puis que j'ai du code qui apparait, ça m'aiderai au moins de savoir si ce code fonctionne chez vous si quelqu'un peu l'essayer.
Si ya une version relativement simple et compréhensive en AS3 j'suis preneur, j'ai tenté de m'y mettre mais c'est vraiment un autre monde pour le moment j'trouve.
Du coup j'ai opté passagèrement pour la version Flash6 AS1 avec un vieux loadVariableNum("","") Bon ça a l'avantage de fonctionner.
Voilà merci pour l'aide en tout cas.
archy
8 oct. 2009 à 18:06
regardes du coté de l'encodage du fichier txt pour le problème des %20.
Pour ce qui est du code à la fin, ça me fait penser à des variables envoyées par Flash lorsqu'il charge une page avec une requête GET et non POST. Ne faisant plus d'AS2 je ne pourra pas trop t'éclaircir sur ce point.
PS : tu utilises bien de l'AS2?
Stef.
8 oct. 2009 à 12:20
Voici ce que j'utilise
chargeur = new LoadVars();
chargeur.load("about.txt");
chargeur.onLoad = function(charge) {
if (charge=!undefined) {
trace("data loaded !");
contener.champ_text.text;
contener.champ_text.htmlText = chargeur;
contener.gotoAndPlay("on");
} else {
trace("error_textload");
}
};
Une idée ?
23 janv. 2008 à 09:02
J'aimerai dire "à charge de revanche"... rire, mais là je suis un peu moins certain d'être à la hauteur.
22 janv. 2008 à 19:19
Tu peut donc utiliser plusieurs astuces pour acceder à tes variables en dehors de la fonction onLoad :
I) Tu peut les déclarer en global :
_global.variable1=A1.valeur1;
pour l'utiliser par la suite tu devras utiliser tout le temps le prefixe _global :
trace(_global.variable1);
-Tu peut utiliser _root (la racine de l'animation) mais attention cette technique est à double tranchants : Si l'animation qui utilise _root est chargée dans une autre animation, _root n'aura plus la valeur de la racine de l'animation chargée, mais de celle qui la charge... Si l'animation est seule, tu peux utiliser _root sans problème :
Même chose qu'avec _global, mais avec _root :
_root.variable1=A.valeur1;
trace(_root.variable1);
Pour finir, tu peut appeler une fonction annexe qui se chargera de faire ce que tu veux. Par exemple si tu veux simplement afficher les infos dans la console de l'API de Flash il te suffira de faire :
A1.onLoad=function(sucess) {
if(sucess) {
afficher(A1.variable1, A1.variable2);
}
else {
trace("erreur chargement...");
}
}//fin onLoad
function afficher(var1, var2) {
trace(var1);
trace(va2);
}
Bien sûr, la fonction afficher n'est qu'un exemple. Tu pourrais donc créer une fonction afficherBoutons() qui se chargerait de créer des copies d'un clip pour créer des boutons et leurs attribuer des fonctions en fonction des données du fichier texte...
Mais si tu a besoin des informations tout au long de ton programme, alors tu sera obligé de recourir au _root ou _global sauf si tu utilise la dernière solution que voici :
Une dernière solution : Comme dit plus haut, une variable est disponible dans le bloc ou elle à été déclarée. Tu pourrais donc aussi déclarer tes variables en dehors de la fonction onLoad pour pouvoir y acceder par la suite en dehors de la fonction :
var variable1:String=new String();
var variable2:String=new String();
A1:LoadVars=new LoadVar();
A1.Load("fichier.txt");
A1.onLoad=function(sucess:Boolean):Void {
if(sucess) {
variable1=A1.variable1;
variable2=A1.variable2;
}
else {
trace("erreur chargement...");
}
}//fin onLoad
trace(variable1);
trace(variable2);
Note : les variables variable1 et variable2 sont de type String car les données renvoyés par la class LoadVars sont des String, même si on met dans le fichier txt :
&variable=15
la valeur de A1.variable="15"(String) et non 15 (Number)
Voilà, j'espère avoir répondu à ta question,
Stefbuet
22 janv. 2008 à 09:57
En clair : sur la première frame j'utilise la collection d'instructions classiques pour lire un fichier de type .txt, cette lecture se fait dans une fonction.
Sur la deuxième frame, donc en dehors de la fonction, je veux utiliser une des variables lue dans la première frame... et bien impossible, ma variable ne "sort" pas de la fonction.
Mon code :
Frame 1 :
A1 = new LoadVars();
A1.load("http://www.............../monfichier.txt); // Mon fichier texte comprend : &valeur1="toto" & valeur2="zaza"
A1.onLoad = function(success) {
if (success) {
variable1 = A1.valeur1;
variable2 = A1.valeur2;
}
trace(variable1); // et ça affiche toto sans probleme
trace(variable2); // et ça affiche zaza sans probleme
}
Frame 2 :
trace(variable1); // et ça affiche "undefined"
trace(variable2); // et ça affiche "undefined"
En d'autres termes, mes variables ne sont disponibles qu'à l'intérieur de la fonction qui lit le fichier texte.
Mon but : pouvoir utiliser les variables ailleurs .... est ce possible ?
MERCI POUR VOTRE ATTENTION ET VOTRE COLLABORATION !
22 janv. 2008 à 09:40
27 nov. 2007 à 22:31
14 nov. 2007 à 16:25
24 juin 2006 à 23:01
31 mai 2006 à 14:10
il suffi juste de rajouter un & entre les variables dans le fichier texte tel que par exemple :
code txt :
&10/04/06 cet%20Appartement%20n'est%20pas%20disponible%20pour%20le%20moment%20!!%20desolé%20!!&11/04/05 ce%20appart%20est%20libre%20&11/04/05= ect...%20ect...20
sinon au niveau des espace, je ne sais pas essaye de decoche le trasformer en version html moi j'ai pas tro le temps et di moi ce que tu trouve...
31 mai 2006 à 12:04
Dis, et si tu met les codes comme ça: si tu decoche l'option "mettre les textes au format html" dans les propriétes de la zone de text dynamique, je suis sure que ca pourrait marcher sans avoir a mettre %20 pour les espaces (et eventuellement tu sauve le .txt en UTF8 pour les caracteres accentués).
Essaye pour voir et dis moi si ca marche...
Autre chose tu crois qu'il serait possible de rassembler tous les fichiers text dans 1 seul ce serait plus pratique non... c'etait ce que je voulais faire mais je n'ai pas reussi?
Dis moi ce que tu en penses!!!
Loly
31 mai 2006 à 08:13
cela donne :
dispo = bonjour%20les%20apparts%20de%cette%20date%20ne%20sont%20pas%20libre%20pour%20cette%20date%20!!!
il ne faudra pas modifier le premier mot : diso = .
pence tu que tes parent pourons faire cela ? :-)
si oui alors si tu veux je pourrais tla faire :-)
25 mai 2006 à 17:01
imagine que tu veux reserver une location saisonniere et tu veux verifier la disponibilité de tes dates avant de contacter les propriétaire.la location se faisant a la semaine du samedi au samedi, l'utilisateur choisi une semaine (ex : du 27 mai au 3 juin 2006) et un message s'affiche pour dire si le studio est disponible ou deja reserve pour la date en question.
J'avais deja trouvé une source similaire mais en PHP et mes parents sachant a peine faire un copier coller je trouvais cela plus pratique pour eux de mettre les infos sur un fichier texte comme ca ca limite les erreures et c'est updaté en 2 sec.
Seul probleme je n'arrive pas a le faire moi meme alors je cherchais une ame charitable qui veuille bien me montrer... voila tu sais tout! si tu peux m'aider ce serait super cool!
lolycatz
25 mai 2006 à 16:22
24 mai 2006 à 19:57
;o)
thanks
24 mai 2006 à 19:56
Dis moi, tu pourrais m'aider a faire la meme chose mais avec une combo box contenant un max de dates correspondant à un message : "diponible" ou "déja reservé".
Je t'explique mes parents ont des chambres d'hotes qu'ils louent a la semaine et cela leur serait tres utile pour leur site, la gestion des reponses en .txt aussi compte tenu que ce sont des breles totales en informatiques alors le php j'oublie tout de suite.
Si tu peux m'aider, te casse pas la tete pour les dates mais en juste quelques unes et je completerai, je suis vraiment debutante mais si on me montre l'exemple je pense que je saurais faire...
Merci
19 mai 2006 à 13:52
Tu ne peut pas faire par exemple :
age=18 ans&prenom=bali balo
Il faut faire :
age=18%20ans&prenom=bali%20balo....etc...etc
Je verais plus tard la source, la chui au boulot et j'ai que flash MX ^^
bali_balo....=]
19 mai 2006 à 01:05
age=17%20ans