11548 sujets

JavaScript, DOM et API Web HTML5

Bonjour,
Je suis entrain d'écrire un programme en AJAX. Je veux stocker dans un fichier xml mes 5 pages maximum de breves.

Mon fichier xml, une fois généré, sera de la forme :
<response>
<breves id=1>
   // ici mes 4 breves de la page 1
</breves>
<breves id=2>
 // ici mes 4 breves de la page 2
etc...
</response>


Le problème que je rencontre, c'est pour ajouter une page à mon document DOM.

Message d'erreur :
Fatal error: Call to undefined method DOMNodeList::appendChild() in /homepages/35/d164359599/htdocs/nfr/fr/breves/include/fonctions.ajax-create.php5 on line 29

Voici la fonction qui plante : (c'est le root d'après ce que je vois)
function AddOnePage($file,$num_page){
	$root=$file->getElementsByTagName('response'); // récupération de l'élément réponse

	// Création du noeud breves
	$element_breves = $file->createElement("breves");//On crée un élément breves
	$element_breves->setAttribute("id", $num_page); //On donne un attribut id (l'id de la page)
	$element_breves->setIdAttribute('id',true);
	$element_breves = $root->appendChild($element_breves);//On ajoute cet élément à la racine // c'est le $root qui déconne
	
	return $file;
} 


Merci
Modifié par raffoul (11 May 2007 - 21:38)
Je serais le 1er à me corriger.

getElementsByTagName renvoie un tableau. Dans mon cas, il n'y a qu'un élément donc
$root=$file->getElementsByTagName('response')->item(0);