Traitement sur les attributs des noeud d'arbre Dom d un fichier XML avec PHP

mimi87uk Messages postés 5 Date d'inscription jeudi 19 mars 2009 Statut Membre Dernière intervention 6 juin 2012 - 5 juin 2012 à 12:16
mimi87uk Messages postés 5 Date d'inscription jeudi 19 mars 2009 Statut Membre Dernière intervention 6 juin 2012 - 6 juin 2012 à 11:14
Bonjour,

je veux comparer entre les valeurs de l'attribut "numnode" (qui est en gras) de 2 noeuds fils et d'un noeud qui se répète plusieurs fois , et ça pour creer des nouveau attributs dans le noeud


voici mon fichier xml




























.
.
.
remarquant que quand on change le chemin de binomenode c-à-d l'attribut "chemin" change le premier binomedone n'a pas toujours un predecessornode

et voici mon code php , j'ai commencé de traité le cas ou y a pas de predecessor mais ça pas marché :(

load($fichier)) {
die("Impossible de charger le fichier XML");
}


$racine=$dom->documentElement;

//echo $racine->nodeName."

";

$listbinomenode=$dom->getElementsByTagName('binomenode');

for($i=0;$ilength;$i++){
$binomenode= $listbinomenode->item($i);

//echo $binomriwaya->nodeName."
";

if($binomenode->nodeType ==XML_ELEMENT_NODE && $binomriwaya->hasChildNodes()){
foreach($binomenode->childNodes as $child)

if($binomenode->childNodes->lenth=1){

$numnode=$child->firstChild->attributes->getNamedItem("numnode");


$x=$numenode->nodeValue;

$child->firstChild->setAttribute("PosX",$x);

}

}

}


?>


merci pour l aide...

2 réponses

Lyle56 Messages postés 240 Date d'inscription jeudi 1 mai 2008 Statut Membre Dernière intervention 19 juillet 2012 2
6 juin 2012 à 09:08
Bonjour,


$listbinomenode=$dom->getElementsByTagName('binomenode'); 

Ton nom de noeud est pas bon, dans ton xml c'est "binomnode".

Je ne sais pas si cela changera quelque chose. Il faudrait tester "correctement" avec Xdebug (ou autre) pour voir le comportement.



Sans maitrise, la puissance n'est rien
Il ne faut pas vendre la peau de l'ours, non il ne faut pas.
0
mimi87uk Messages postés 5 Date d'inscription jeudi 19 mars 2009 Statut Membre Dernière intervention 6 juin 2012
6 juin 2012 à 11:14
non c pas ça le problème, c'été juste une erreur d’écriture ici sinon dans mon code il est correct
0
Rejoignez-nous