php et dom

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : php et dom

Re: php et dom

par xTG » 21 sept. 2011, 10:26

Actives ton niveau d'erreur, tu ne dois pas voir les warnings.
Car par exemple ton premier appendChild génère une erreur. ;)

Voici un code fonctionnel :
<?php
$fichier = "test.xml";
$dom = new DOMDocument();
if ($dom->load($fichier)) { 
	$user = $dom->createElement('toto');
	$users = $dom->getElementsByTagName("Users");
	if( $users->length > 0 )
	{
		$users = $users->item(0);
		$users->appendChild($user);
		if( $dom->save('test.xml') !== false )
			echo 'Node ajouté';
		else
			echo 'Save : erreur';
	}
	else
		echo 'Node users non trouvé';
}
else
	echo 'Load: erreur';
?>

Re: php et dom

par Mazarini » 21 sept. 2011, 10:21

Bonjour,

La variable $user n'est pas initialisée.
De plus pour ajouter un node, ne doit on pas le créer ?

Re: php et dom

par hello55562 » 21 sept. 2011, 08:55

 <?xml version="1.0" ?> 
- <FileZillaServer>
- <Settings>
  <Item name="Admin port" type="numeric">14147</Item> 
  </Settings>
  <Groups /> 
  <Users /> 
  </FileZillaServer>
je dois rajouter des utilisateurs dans <Users />

Re: php et dom

par xTG » 21 sept. 2011, 07:14

Une balise orpheline ? C'est pas possible dans un fichier XML à cause de la structure. :)
Pourrais-t-on voir ce fameux fichier afin de comprendre ?

Re: php et dom

par hello55562 » 20 sept. 2011, 21:34

Mon users est une balise orpheline, mais je pensais qu'elle s'ouvrirait automatiquement du fait qu'on mettait quelques choses dedans...

Re: php et dom

par xTG » 20 sept. 2011, 20:52

Tout simplement que ta ligne précédente ne doit pas renvoyer d'élément :
$users= $dom->getElementsByTagName("users")->item(0);
Vérifies ce qu'il y a dans $users et tu auras ton début de réponse. ;)

php et dom

par hello55562 » 20 sept. 2011, 20:26

Bonjour,

Je dois modifier un fichier XML avec du PHP mais je ne comprend pas d'où vient mon erreur.
mon code :
<?php
$fichier = "monfichier.xml";
$dom = new DOMDocument();
if ($dom->load($fichier)) {
 
$user -> appendChild("toto");
$users= $dom->getElementsByTagName("users")->item(0);
$users->appendChild($user);

}
?>
mais j'ai une erreur :
Fatal error: Call to undefined function appendChild() in C:\wamp\www\Nouveau dossier\docxml.php on line 8
merci