[DOM] Problème d'insertion
Bonjour,
Voilà, je débute en termes de manipulations de fichier xml , et je rencontre quelques difficultés pour insérer (/ modifier) des éléments dans un noeud.
J'ai le fichier xml suivant:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
|
<?xml version="1.0" encoding="ISO-8859-1"?>
<principal>
<item name="adventure">
<item name="game1" pic="game1.jpg" />
<item name="game2" pic="game2.jpg" />
</item>
(...)
<item name="shoot 'em up">
<item name="game126" pic="game1ya.jpg" />
<item name="game127" pic="game19x.jpg" />
</item>
</principal> |
et le code php pour l'insertion:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
$dom = new DomDocument;
$dom->load("base.xml");
$nom1= utf8_decode(htmlspecialchars($_POST['nom1']));
$pic= '/'.utf8_decode(htmlspecialchars($_POST['pic']));
$xpath = new DomXPath($dom);
$root = $xpath->query("//item[@name='".$nom1."']");
$newItem = $dom->createElement("item");
$newItem->setAttribute("name", $nom1);
$newItem->setAttribute("pic", $pic);
$root ->item(0)->appendChild($nouveauItem);
$dom->save('base.xml'); |
Je voudrais savoir si la méthode employée est bonne ( y a des erreurs dans le script :oops: que je n'arrive pas à corriger, ça me rend dingue :ouin: ) . (Cependant l'insertion de nodes est ok.)
Ensuite l'apostrophe semble poser problème pour la requête "Xpath->query", comment passer outre?
Merci de bien vouloir m'aider :)