Précédent   Forum des professionnels en informatique > PHP > Bibliothèques et frameworks > XML > DOM
DOM Forum d'entraide pour l'extension DOM permettant de manipuler des documents XML en PHP 5 (approche DOM). Avant de poster -> tutoriels DOM
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 23/05/2006, 14h51   #1
Membre du Club
 
Inscription : avril 2002
Messages : 80
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Moselle (Lorraine)

Informations forums :
Inscription : avril 2002
Messages : 80
Points : 46
Points : 46
Envoyer un message via MSN à scorpiwolf
Par défaut [DOM] Génération de XML tout pas beau :(

Salut,

J'utilise la bibliothèque DOM (DOMDocument) de php pour générer du xml et l'ecrire dans un fichier.

Jusque là, tout vas bien, le prob est lorsque j'ouvre mon fichier xml, il m'a tout écris sur deux lignes de code.
Code XML :
1
2
<?xml version="1.0" encoding="UTF-8"?>
<root><rep label="a"><file label="f1.ext" chemin="../../a"/><file label="f2.ext" chemin="../../a"/></rep></root>

Voilà le code php en très simplifié
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
 
$dom = new DOMDocument('1.0', 'UTF-8');
$racine = $dom->createElement('root');
 
$rep = $dom->createElement('rep');
$rep->setAttribute("label", "a");
$racine->appendChild($rep);
 
while (...) {<blockquote>$file = $dom->createElement('file');
$file->setAttribute("label", $tab['nom']);
$file->setAttribute("chemin", $tab['chemin']);
$rep->appendChild($file);
</blockquote>}
 
$dom->appendChild($racine);
$dom->save("fichiers.xml");
Une idée pour qu'il mette les \n et les tabulations automatiquement?

Merci
scorpiwolf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2006, 14h57   #2
Expert Confirmé
 
Avatar de Eusebius
 
Inscription : avril 2003
Messages : 3 286
Détails du profil
Informations forums :
Inscription : avril 2003
Messages : 3 286
Points : 3 155
Points : 3 155
PHP tourne sur un Windows ?
Eusebius est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2006, 15h06   #3
Membre du Club
 
Inscription : avril 2002
Messages : 80
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Moselle (Lorraine)

Informations forums :
Inscription : avril 2002
Messages : 80
Points : 46
Points : 46
Envoyer un message via MSN à scorpiwolf
Oui apache 2 + php + mysql sur windows
scorpiwolf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2006, 15h12   #4
Expert Confirmé
 
Avatar de Eusebius
 
Inscription : avril 2003
Messages : 3 286
Détails du profil
Informations forums :
Inscription : avril 2003
Messages : 3 286
Points : 3 155
Points : 3 155
Citation:
Envoyé par scorpiwolf
Oui apache 2 + php + mysql sur windows
Il me semble que pour la mise en forme du fichier XML, c'est le composant MS XML qui merdouille. Je sais pas trop comment régler ça, j'ai vaguement vu des trucs sur le net qui en parlaient, mais c'étaient pour d'autres langages utilisant d'autres APIs que DOM, alors j'ai laissé tomber (je n'avais pas le problème chez moi). Mais je te suggère un bon coup de Google là-dessus, et éventuellement la KB de Microsoft.
Eusebius est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2006, 15h14   #5
Membre du Club
 
Inscription : avril 2002
Messages : 80
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Moselle (Lorraine)

Informations forums :
Inscription : avril 2002
Messages : 80
Points : 46
Points : 46
Envoyer un message via MSN à scorpiwolf
Ok merci.
J'ai compris, je vais recoder une fonction save...
scorpiwolf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2006, 15h47   #6
Membre du Club
 
Inscription : avril 2002
Messages : 80
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Moselle (Lorraine)

Informations forums :
Inscription : avril 2002
Messages : 80
Points : 46
Points : 46
Envoyer un message via MSN à scorpiwolf
Je suis tombé tout bêtement sur ca :
Code :
1
2
 
$dom->formatOutput = true;
Honte à moi j'avais mal cherché.
Bref maintenant ca marche nickel.
scorpiwolf est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 23/05/2006, 15h49   #7
Expert Confirmé
 
Avatar de Eusebius
 
Inscription : avril 2003
Messages : 3 286
Détails du profil
Informations forums :
Inscription : avril 2003
Messages : 3 286
Points : 3 155
Points : 3 155
Citation:
Envoyé par scorpiwolf
Honte à moi
Oui ben... Bienvenue au club
Eusebius est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 18h33.


 
 
 
 
Partenaires

Hébergement Web