Bonjour à tous,
je voudrais éditer le contenu d'un noeud dans un fichier XML via un formulaire html en utilisant DOM XML.
voici le code php dans mapage.php :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
foreach($setting as $fieldname=>$settingval){
        echo $fieldname.' de '.$rang.' = '.$settingval.'<hr />';//renvoie les valeurs attendues
	$processor->editNodeValue($fieldname, $rang, $settingval);
}
et voici la méthode editNodeValue :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
 
public function editNodeValue($nodename, $rang=0, $newdata){
		if(is_string($nodename)&&$nodename!=''&&is_string($newdata)&&$newdata!=''){
			$this->editedNode = $this->dom->getElementsByTagName($nodename)->item($rang);
			$this->populatedNodeValue = $this->dom->createTextNode($newdata);
			$this->editedNode->parentNode->replaceChild($this->populatedNodeValue, $this->editedNode);
		}else{
			$this->errors['removeData'] = 'Impossible de mettre à jour le noeud du fichier XML'.$this->XMLfile;
		}
}
Malheureusement j'obtiens un erreur quand je teste :
Notice: Trying to get property of non-object in C:\Program Files\EasyPHP 3.0\www\xxxxxx\xxxxxx\xxxxxxxxx\XMLprocessor.php on line 162

Fatal error: Call to a member function replaceChild() on a non-object in C:\Program Files\EasyPHP 3.0\www\xxxxxx\xxxxxx\xxxxxxxxx\XMLprocessor.php on line 162
Je pense que le problème se situe ici :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
$this->editedNode = $this->dom->getElementsByTagName($nodename)->item($rang);
Help....