bourane974
Messages postés7Date d'inscriptionmercredi 27 septembre 2006StatutMembreDernière intervention 6 décembre 2007
-
5 déc. 2007 à 16:52
bourane974
Messages postés7Date d'inscriptionmercredi 27 septembre 2006StatutMembreDernière intervention 6 décembre 2007
-
6 déc. 2007 à 09:36
bonjour,
Voila, j'aimerais savoir si on peut faire ce genre de manip avec un fichier xml (je m'explique).
monXml.xml :
<debut>
<LIST param0="1" param1="je c pas" />
</debut>
j'ai mon fichier xml ci-dessus, et j'ai la fonction, suivante, dans flash, qui doit me permettre de charger n'importe quel fichier xml du mm format que monXml.xml
function __xmlCharge(UnFileXml:String, UnTableau:Array, NbCol:Number)
{
//NbCol => nombre de colonne
//Lectur d'un fichier xml et enregistrement dans un tableau
var __ParseXml:XML = new XML;
__ParseXml.ignoreWhite = true;
__ParseXml.onLoad = function (success)
{
if(success)
{
// parcours du fichier xml
for(i=0;i<__ParseXml.firstChild.childNodes.length;i++)
{
if(NbCol > 0)
{
for(iCol=0;iCol<NbCol;iCol++)
{
var Param = "Param" + iCol;
trace("Param :" +Param);
if(__ParseXml.firstChild.childNodes[i].attributes.Param != undefined)
{
UnTableau[i][iCol] = __ParseXml.firstChild.childNodes[i].attributes.Param;
}
trace("Données :" +__ParseXml.firstChild.childNodes[i].attributes.Param);
}
}else if(NbCol == 0) // si mon xml comporte 1 colonne (0)
{
if(__ParseXml.firstChild.childNodes[i].attributes.param0 != undefined)
{
UnTableau[i] = __ParseXml.firstChild.childNodes[i].attributes.param0;
}
}
}
}
trace("UnTableau :" +UnTableau.join("/"));
}
__ParseXml.load(UnFileXml);
}
en faite cette fonction elle lit x nombre de ligne du fichier xml et à l'interieur de cette ligne j'ai plusieurs paramètres, et au lieu d'écrire le nom des champs (param0, param1) a la fin de __ParseXml.firstChild.childNodes[i].attributes.(nomduchamps)
je veux l'autoincrémenté pour que sa soit automatique :P Mais le pb c'est qu'il ne prend pas en compte le nouveau champs en rouge.
Quand je met le nom du champs en dur sa marche mais si je l'incrémente comme je le fait dans ma fonction sa ne marche pas.
Déjà est ce que c'est possible de faire sa?? si oui, ou est mon erreur??