Bonjour
je dispose d'un fichier xml qui ressemble à ça:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1234567
<pays>
  <ville>
    <nom>Paris</nom>
    <nbre_hab>100</nbre_hab>
  </ville>
  ...
</pays>
Je souhaite ajouter des éléments ville depuis un formulaire qui ressemble à ça:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
<form action="insertXml.php" method="POST">
<table>
<tr><td>NOM</td><td><input type="text" name="NOM"></td></tr>
<tr><td>NBRE_HAB</td><td><input type="text" name="NBRE_HAB"></td></tr>
<tr><td></td><td><input type="submit" name="valider"></td></tr>
</table>
</form>

Mon code php est le suivant:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
if(isset($_REQUEST['valider']))
	{
		foreach($_POST as $cle => $valeur)
		{
			${$cle} = htmlspecialchars($valeur);
		}
		$doc = new DomDocument();
		$doc->preserveWhiteSpace=FALSE;
		$doc->formatOutput=TRUE;
		if($doc->load('pays.xml'))
		{
			$racine = $doc->getElementsByTagName("PAYS")->item(0);
		}else{
			$racine = $doc->createElement("PAYS");
		}
		$doc->appendChild($racine);
		foreach($racine as $pays)
		{
		$ville=$doc->createElement('VILLE');
		$pays->appendChild($ville);
 
		$nbre_hab=$doc->createElement('NOM_HAB',$ville['NBRE_HAB']);
		$ville->appendChild($nbre_hab);
 
		$nom=$doc->createElement('NOM',$ville['NOM']);
		$ville->appendChild($nom);
 
		}
		$doc->save('pays.xml');
	}
Le probleme c'est que ça fonctionne pas j'ai consulté la FAQ mais ça n'a rien donné.
Merci de votre aide
coulane