Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Flash/Flex > Flash
Flash Forum d'entraide sur la technologie Flash (Cours, FAQs, Sources)
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 29/06/2007, 15h41   #1
Membre habitué

 
Avatar de Nounoursonne
 
Inscription : mai 2002
Messages : 257
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 257
Points : 145
Points : 145
Par défaut Accéder à un fichier XML

bonjour,

voila je suis débutant en flash, et je voudrais lire un fichier XML, en regardant les tutoriaux sur dvp, j'ai bien compris le système par contre j'ai un soucis.
Voici le code
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
 
	trace ("essai");
	palette_color[1]=123456;
	palette_color[2]=654321;
 
 
	//ouverture du XML
	myXML = new XML();
	myXML.ignoreWhite = true;
	myXML.load("test.xml");
 
	//parcours du xml
	trace (myXML.firstChild.childNodes.length);
 
	while (x.childNodes[k] != undefined){
		trace(x.childNodes[k].attributes.regroupement);
		++k;
	}
et sur la sortie j'ai :
à priori il n'accède pas au contenu de mon xml, purant il m'a l'air correct test.xml :
Code :
1
2
3
4
5
 
<?xml version="1.0" ?>
<root>
	<regroupement id="1" dept="59"/>
</root>
il me trouve bien le xml, mais pourquoi il n'arrive pas à accéder au contenu ?
j'ai du faire une erreur quelque part, mais où ?

merci de votre aide
Nounoursonne est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2007, 16h16   #2
Nouveau Membre du Club
 
Avatar de Tigrounette
 
Inscription : décembre 2005
Messages : 132
Détails du profil
Informations forums :
Inscription : décembre 2005
Messages : 132
Points : 39
Points : 39
En fait il manque une petite chose.

Au moment ou tu demande à ton animation flash de charger le fichier XML (avec le code myXML.load("test.xml"); ), celle ci lance le téléchargement du fichier et continue le traitement de la suite du code. Là, tu lui demande de traiter le fichier XML alors qu'il n'est pas encore entièrement téléchargé. C'est pourquoi il faut ajouter cette petite fonction :

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
trace ("essai");
palette_color[1]=123456;
palette_color[2]=654321;
 
 
//ouverture du XML
myXML = new XML();
myXML.ignoreWhite = true;
myXML.load("test.xml");
 
myXML.onLoad = function(OK) {
	if (OK) {
		//parcours du xml
		trace (myXML.firstChild.childNodes.length);
 
		while (x.childNodes[k] != undefined){
			trace(x.childNodes[k].attributes.regroupement);
			++k;
		}
	} else {
		trace("Erreur lors du téléchargement du fichier");
	}
}
La fonction onLoad() est lancée lorsque ton fichier XML est près à être utilisé, elle passe aussi une variable qui permet de savoir si le téléchargement c'est bien passé.
Tigrounette est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 29/06/2007, 16h39   #3
Membre habitué

 
Avatar de Nounoursonne
 
Inscription : mai 2002
Messages : 257
Détails du profil
Informations forums :
Inscription : mai 2002
Messages : 257
Points : 145
Points : 145
Merci tigrounette, ça marche forcément mieux maintenant
Nounoursonne est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 19h47.


 
 
 
 
Partenaires

Hébergement Web