Bonjour à tous,
comme je l'ai indiqué dans le titre, j'ai un problème avec la fonction getElementById(). J'ai une fonction qui crée une une fichier XML (jusqu'à là pas de problème)
1 2 3 4 5 6 7 8 9 10 11 12 13 14
|
function &createXML(&$file){
$root = $file->createElement("rss");
$root->setAttribute("version", "2.0");
$root = $file->appendChild($root);
$element_channel = $file->createElement("channel");
$element_channel->setAttribute("id", "news");
$element_channel = $root->appendChild($element_channel);
.....
return $element_channel;
} |
Et j'ai une autre fonction qui charge un fichier XML en mémoire
1 2 3 4 5
| function &openXML(&$file){
$file->load("../data/news.xml");
$channel = $file->getElementById("news");
return $channel;
} |
et enfin j'ai une troisième fonction qui ajoute une balise item dans le fichier XML en mémoire une balise item.
1 2 3 4
| function Add(&$parent, $root)
{
$item = $parent->createElement("item");
$item = $root->appendChild($item); |
et quand je charge un XML deja existant en mémoire et que je lui ajoute une balise item, j'ai ce message d'erreur :
Fatal error: Call to a member function appendChild() on a non-object in ...
Donc je pense que cela vient de ma fonction openXML(&$file) qui me retourne un objet null.
Si quelqu'un peut m'aider à résoudre ce problème.
Merci d'avance.
Partager