XML/ PHP-Problème pour l'insertion d'un noeud
Résolu
rafale69300
Messages postés
93
Statut
Membre
-
rafale69300 Messages postés 93 Statut Membre -
rafale69300 Messages postés 93 Statut Membre -
Voici mon fichier xml actuel :
Mon but est d'insérer un nouveau message contenant une source et une traduction dans le context.
Voici mon code, mais rien ne s'insère, et je ne vois pas ma faute :
<TS>
<context>
<name>Context 04</name>
<message>
<source>Translation 01</source>
<translation>Traduction 01</translation>
</message>
<message>
<source>Translation 02</source>
<translation>Traduction 02</translation>
</message>
<message>
<source>Translation 03</source>
<translation>Traduction 03</translation>
</message>
<message>
<source>Translation 04</source>
<translation>Traduction 04</translation>
</message>
<message>
</context>
</TS>
Mon but est d'insérer un nouveau message contenant une source et une traduction dans le context.
Voici mon code, mais rien ne s'insère, et je ne vois pas ma faute :
<?php
$parent = new DomDocument;
$parent_node = $parent ->createElement('message');
$parent_node->appendChild($parent->createElement('source', $source));
$parent_node->appendChild($parent->createElement('translation', $translation));
$parent->appendChild($parent_node);
$path = 'extension/'.$extension.'/translations/'.$language.'/translation.ts';
$domDocument = new DomDocument( '1.0', 'utf-8' );
$domDocument->load($path);
$contextList = $domDocument->getElementsByTagName('context')->item($context);
$messsageList = $contextList->getElementsByTagName('message');
$domDocument->importNode($parent->documentElement, true);
$domDocument->save($path);
?>
1 réponse
-
J'ai trouvé mon erreur voici le nouveau code :
$path = 'extension/'.$extension.'/translations/'.$language.'/translation.ts'; $dom = new DomDocument; $dom->load($path); $nouveauMessage = $dom->createElement('message'); $nouveauMessage->appendChild($dom->createElement('source', $source)); $nouveauMessage->appendChild($dom->createElement('translation', $translation)); $context01 = $dom->getElementsByTagName('context')->item($context); $context01->appendChild($nouveauMessage); $dom->save($path);