Bonjour,
j'ai un problème simple ; mon programme crée un fichier xml avec boucle sur les lignes résultantes d'une requêtes vers une base Postgresql.
Mon problème est le suivant :
pourquoi ma balise "markers" ne se ferme pas?
Comment faire pour qu'à la fin du fichier la balise </markers> soit bien présente?

Merci d'avance pour votre aide

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
31
32
33
34
35
36
37
38
$doc = new DOMDocument();
// Definition de la version et l'encodage
$doc->version = '1.0';
$doc->encoding = 'UTF-8';
 
// Ajout d'un commentaire a la racine
$comment_element = $doc->createComment('Created By me');
$doc->appendChild($comment_element);
 
// Ajout de la balise 'markers'
$mk_element = $doc->createElement("markers");
$doc->appendChild($mk_element);
 
// Connexion a la base PostgreSQL
include('connection.inc.php');
 
// Recuperation des lignes
$query = "select...";
 
$result = pg_query($query);
if (!$result) {
	die('Requete invalide : ' . pg_result_error($result));
}
 
while ($row = pg_fetch_assoc($result)){
	$node = $doc->createElement("marker");
	$newnode = $doc->appendChild($node);
	foreach ($row as $fieldname => $fieldvalue) {
		$newnode->setAttribute("$fieldname", $fieldvalue);
	}	
}
 
// Affichage du document XML
$xml_string = $doc->saveXML();
echo $xml_string;
 
// Sauvegarde du document XML sous le nom simple.xml
$doc->save('simple.xml');