Charger plusieurs fichiers xml inconnus ou changeant [Résolu]

Messages postés
746
Date d'inscription
mardi 25 mars 2003
Statut
Membre
Dernière intervention
14 juillet 2015
- - Dernière réponse : vegetalain
Messages postés
746
Date d'inscription
mardi 25 mars 2003
Statut
Membre
Dernière intervention
14 juillet 2015
- 24 nov. 2008 à 12:30
Salut... bigre, je n'aurais jamais autant posé de questions sur le XML en une semaine, mdr... promis j'irais me confesser dimanche.
Bon... voilà le topo... j'arrive maintenant ( suite de mes questions précédentes en fait, sur le XML ze world ), à charger 10 xml et répartir le tout sur 3 colonnes, à paramétrer les couleurs y compris celles de l'ombre portée, et les fonds d'écrans...

Mais...
Mes fichiers se nomment :

Menu0.xml
Menu1.xml
Menu2.xml
etc...
et sont donc définis à l'avance... pour les charger je fais ça :
"..."myXML0 new XML();myXML0.ignoreWhite true;myXML0.load("XMLFR/Menu0.txt");
"..." etc, etc...

Est-il possible de les appeler autrement dans flash, genre... si on a envie d'appeler le premier fichier xml, "zefichierkitu.xml", comment faire..??

J'avais pensé à ce genre de truc, avec le "*" :myXML0 new XML();myXML0.ignoreWhite true;myXML0.load("XMLFR/0" + * + ".txt");

pour par exemple :
0machintruc.xml
1bidulechose.xml
2trucchouette.xml
(comme ça donc, on peut donner le nom qu'on veut aux fichiers, à n'importe quel moment et sans avoir à modifier le fla... moins prise de tête quoi. La condition étant de mettre un chiffre après...)
Mais ça marche pas... (sinon je ne serais pas là)... Quelqu'un donc saurait-il comment signaler le "*" dans flash ou ... une autre soluce pitète?

Merci de votre aide !
Afficher la suite 

6 réponses

Meilleure réponse
Messages postés
6161
Date d'inscription
dimanche 21 décembre 2003
Statut
Modérateur
Dernière intervention
4 septembre 2013
6
3
Merci
pourquoi ne pas faire un XML contenant les noms de tes XML à charger, tout simplement ?

Peg'

Dire « Merci » 3

Quelques mots de remerciements seront grandement appréciés. Ajouter un commentaire

Codes Sources 211 internautes nous ont dit merci ce mois-ci

Commenter la réponse de pegase31
Messages postés
132
Date d'inscription
samedi 6 janvier 2007
Statut
Membre
Dernière intervention
4 janvier 2011
2
0
Merci
Salut !

Bon a ce que je sais, flash c'est côté client, donc pas facile de lire le contenu d'un répertoire. Par contre php est ton pote. Tu as juste à écrire un simple script qui prend par exemple en parametre ton type "xml" et ton dossier, et qui te ressort tout les fichiers xml contenu dans ce dossier.
C'est assez simple à faire je pense ... après tu peux faire un loadVariables si tu es en AS2, ou au pire découper le contenu de ton php manuellement ...

Bon Courage
Lural
Commenter la réponse de lural
Messages postés
746
Date d'inscription
mardi 25 mars 2003
Statut
Membre
Dernière intervention
14 juillet 2015
0
Merci
oups j'ai oublié de préciser une chose d'importance : ce n'est aps pour le web mais pour du local de chez local... php étant un langage server, c cuit je crois... :/
Commenter la réponse de vegetalain
Messages postés
746
Date d'inscription
mardi 25 mars 2003
Statut
Membre
Dernière intervention
14 juillet 2015
0
Merci
hm... ah vi bonne idée, j'avais pas pensé à ça hihihi... merciiiiii !!!
Commenter la réponse de vegetalain
Messages postés
6161
Date d'inscription
dimanche 21 décembre 2003
Statut
Modérateur
Dernière intervention
4 septembre 2013
6
0
Merci
Les solutions les plus simple sont souvent les plus efficaces
Content d'avoir pu te dépanner ;)

Peg'
Commenter la réponse de pegase31
Messages postés
746
Date d'inscription
mardi 25 mars 2003
Statut
Membre
Dernière intervention
14 juillet 2015
0
Merci
euh, en fait j'ai un souci, il ne veut aps charger...

J'ai créer un fichier xml contenant les noms des autres fichiers XML à charger :
(ListeFR.txt) > j'ai mis l'extension txt et non xml car c plus facile à ouvrir par n'importe ki !

<main>
   <news>
     <Menu0 value="Menu0" />
     <Menu1 value="Menu1" />
     <Menu2 value="Menu2" />
     <Menu3 value="Menu3" />
     <Menu4 value="Menu4" />
     <Menu5 value="Menu5" />
     <Menu6 value="Menu6" />
     <Menu7 value="Menu7" />
     <Menu8 value="Menu8" />
     <Menu9 value="Menu9" />
   </news>
</main>

je les appelles comme ça dans le flash, (il y a donc 10 champs pour recevoir disctinctement les différents noms, à noter kan meme que c 10, et c tout, ni plus ni moins, donc...)
myXMLMenu new XML();myXMLMenu.ignoreWhite true;myXMLMenu.load("XMLFR/ListeFR.txt");
myXMLMenu.onLoad = function(flag) {
  if (flag) {
    i = 0;
    x = myXMLMenu.firstChild;
            MenuTitre0.text = (x.childNodes[i].childNodes[0].attributes.value+".txt");
            MenuTitre1.text = (x.childNodes[i].childNodes[1].attributes.value+".txt");
            MenuTitre2.text = (x.childNodes[i].childNodes[2].attributes.value+".txt");
            MenuTitre3.text = (x.childNodes[i].childNodes[3].attributes.value+".txt");
            MenuTitre4.text = (x.childNodes[i].childNodes[4].attributes.value+".txt");
            MenuTitre5.text = (x.childNodes[i].childNodes[5].attributes.value+".txt");
            MenuTitre6.text = (x.childNodes[i].childNodes[6].attributes.value+".txt");
            MenuTitre7.text = (x.childNodes[i].childNodes[7].attributes.value+".txt");
            MenuTitre8.text = (x.childNodes[i].childNodes[8].attributes.value+".txt");
            MenuTitre9.text = (x.childNodes[i].childNodes[9].attributes.value+".txt");
        i++;
    }
  }

donc le 1er champs dynamique nommé "MenuTitre0" affiche bien, "Menu0.txt".
Ensuite j'appelle donc ce fichier "Menu0.txt" de cette manière :

myXML0 = new XML();
myXML0.ignoreWhite = true;
myXML0.load("XMLFR/"+MenuTitre0.text);
myXML0.onLoad = function(flag) {
  if (flag) {
    i = 0; etc, etc...

il m'affiche alors ça :

Error opening URL "file:///C|/Alain%5Fok/TestNov08/VersionOK/XMLFR/-
"

Ca cloche où, je vois pas..., j'ai utiliser la meme technique pour afficher des couleurs dans des champs. Les différents contenus sont chargés et les couleurs sont bel et biena ffichées, et là pour un "chargement" de fichier, ça ne fonctionne pas...
Commenter la réponse de vegetalain