Aller au contenu

Importer données XML dans un flash


sayan2406

Sujets conseillés

Bonjour,

Jusqu'à présent j'ai toujours réussi à m'en sortir et j'évite de poster lorsque j'arrive ) trouver la solution mais la je bloque réellement et après avoir passé 2 jours sur des forums et testé de nombreuses choses je n'arrive pas à faire fonctionner mon fochier. il est probable que je sois très proche du résultat mais la je craque je vous expose mon problème:

Un ami me met à disposition sur un site internet un fichier nommé on dira fichier.xml

Ce fichier est du format suivant (je ne peux pas le changer il me le transfère comme cela et pas autrement):

<?xml version="1.0" encoding="iso-8859-1" ?>

- <robert>

<tango>3 913 755,48</tango>

<alpha>05/03/2010 10:18:00</alpha>

<nome>25781</nome>

<nomp>oui</nomp>

<Timestamp />

<Value>00000,00</Value>

<droits>Copyright 2007-2008 </droits>

</robert>

Je construis donc mon fichier flash qui devra diffuser les données tango et alpha.

Je créé mes zones de textes dynamiques

une nommé alpha

une nommé tango

Je met le code suivant:

/* Importation XML */

Fichier_XML = new XML();

Fichier_XML.ignoreWhite = true;

Fichier_XML.load("fichier.xml");

/* J'affiche mes mots-clef */

Fichier_XML.onload = function(Reussite) {

if (Reussite) {

x = Fichier_XML.firstChild;

tango.tango = x.childNodes[0].attributes.tango;

alpha.alpha = x.childNodes[1].attributes.alpha;

}

else { zonetxt = "Erreur lors du chargement du fichier XML"; }

};

Je lance l'animation et rien ne se passe.

Autre chose pour le tango afin d'effectuer une animation sur les chiffre je voudrais créer plusieurs zone de texte : tango1 tango 2 tango3...

reprenant respectivement les caractères 1 , 2 ,3 de ma donnée tango.

A noter que le fichier sera mis a jour regulierement par mon ami et il fuadrait donc que le flash se mette a jour regulierement.

Merci par avance.

Lien vers le commentaire
Partager sur d’autres sites

C'est simple sans aller plus avant dans ton code :


<?xml version="1.0" encoding="iso-8859-1" ?>
- <robert>
<tango>3 913 755,48</tango>
<alpha>05/03/2010 10:18:00</alpha>
<nome>25781</nome>
<nomp>oui</nomp>
<Timestamp />
<Value>00000,00</Value>
<droits>Copyright 2007-2008 </droits>
</robert>

x.childNodes[0].attributes.tango;

tango n'est pas un attribut (attribute) mais une balise (node) . Vu que tu es en AS2, je te suggère vivement d'utiliser XPathAPI incluse dans cette version d'actionscript, c'est beaucoup plus simple.

Lien vers le commentaire
Partager sur d’autres sites

Alors je récapitule,

Je créé mes zones de textes dynamiques

une nommée alpha

une nommée tango

Je met sur le calque 1 le code suivant:

/* Importation XML */

Fichier_XML = new XML();

Fichier_XML.ignoreWhite = true;

Fichier_XML.load("fichier.xml");

/* J'affiche mes mots-clef */

Fichier_XML.onload = function(Reussite) {

if (Reussite) {

x = Fichier_XML.firstChild;

tango = x.childNodes[0].nodeValue;

alpha = x.childNodes[1].nodeValue;

}

else { zonetxt = "Erreur lors du chargement du fichier XML"; }

};

Rien ne s affiche dans mes zones de texte... :(

Lien vers le commentaire
Partager sur d’autres sites

tango = x.childNodes[0].nodeValue;
alpha = x.childNodes[1].nodeValue;

=>


tango.text = x.childNodes[0].nodeValue;
alpha.text = x.childNodes[1].nodeValue;

"Rien ne s'affiche"... tu as fait des trace avant ?

Sincèrement donne ta source si tu as encore des soucis, j'ai rien contre le fait d'aider, mais j'ai comme dans l'idée que le billet pourra faire 10 pages pour au final afficher du texte dans un champ dynamique :)

Lien vers le commentaire
Partager sur d’autres sites


var xml:XML = new XML();
xml.ignoreWhite = true;

xml.onLoad = function(B)
{
if (B)
{
tango.text = xml.firstChild.childNodes[0].firstChild.nodeValue;
}
};
xml.load("prg_jpmSpace.xml");

voilà, c'est plus simple :)

Lien vers le commentaire
Partager sur d’autres sites

Posté (modifié)


var xml:XML = new XML();
xml.ignoreWhite = true;

xml.onLoad = function(
{
if (
{
tango.text = xml.firstChild.childNodes[0].firstChild.nodeValue;
}
};
xml.load("prg_jpmSpace.xml");

voilà, c'est plus simple :)

Toujours pas xd en tout ca smerci a vous de m'aider.

**Erreur** Séquence = Scene 1, calque = Layer 1, image = 1 :Ligne 4 : Il n'existe aucune propriété nommée 'onload'.

xml.onload = function(B)

Total des erreurs ActionScript : 1 Erreurs signalées : 1

Modifié par sayan2406
Lien vers le commentaire
Partager sur d’autres sites

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...