1. #1
    Membre du Club
    Inscrit en
    février 2008
    Messages
    257
    Détails du profil
    Informations forums :
    Inscription : février 2008
    Messages : 257
    Points : 49
    Points
    49

    Par défaut Données fichier XML sur une même ligne

    Bonjour tout le monde,
    J'utilise DomDocument pour afficher des données extraites depuis la base de données sous format XML dans un fichier.
    Pour cela j'utilise le code suivant pour la déclaration de l'objet DomDoc
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $objetDom = new DOMDocument('1.0','UTF-8');
    	$dom->formatOutput = TRUE;
    et la fonction suivant pour la création des noeuds dans le document.
    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
     
    function createXml($objetDom,$balise,$parent,$text_balise)
    {
    	//création de l'élement 
    	$element = $objetDom->createElement($balise);
     
    	//si le parent n'est pas renseigner on parle de neoud principale
    	if (empty($parent))
    		$element = $objetDom->appendChild($element);
    	else
    		$element = $parent->appendChild($element);
     
    	//affecter le texte pour le noued 
    	$text = $objetDom->createTextNode($text_balise);
    	$text = $element->appendChild($text);
     
    	return $element;
    }
    $objetDom->save(MONO_SITE_PATH."Compo.xml");
    Le code génére bien un fichier XML mais le problème c'est que lorsque j'ouvre le ficher avec Notepad ++, toutes les données sont affichées sur une même ligne malgré que j'ai bien mentionné la propriété formatOutput à True.
    Est ce que quelqu'un a une idée sur ce problème et puisse m'aide à le résoudre.
    Merci d'avance pour votre aide.
    Bien cordialement.

  2. #2
    Membre Expert
    Avatar de gene69
    Profil pro
    Inscrit en
    janvier 2006
    Messages
    1 633
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : janvier 2006
    Messages : 1 633
    Points : 2 126
    Points
    2 126

    Par défaut

    et ce qu'il y a des symboles \n voir \r dans le document xml?
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.
    Soyez moderne: mysqli_connect() or throw Exception(mysqli_connect_error());

    PHP: un problème ? décrivez le avec ceci.

    Utilisez le bouton résolu!

  3. #3
    Membre du Club
    Inscrit en
    février 2008
    Messages
    257
    Détails du profil
    Informations forums :
    Inscription : février 2008
    Messages : 257
    Points : 49
    Points
    49

    Par défaut

    Merci pour votre réponse. Je n'ai rajouté aucun \n ou \r dans le document XML.
    Par contre, les données peuvent être du texte qui contient des retours chariot.

  4. #4
    Membre Expert
    Avatar de gene69
    Profil pro
    Inscrit en
    janvier 2006
    Messages
    1 633
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : janvier 2006
    Messages : 1 633
    Points : 2 126
    Points
    2 126

    Par défaut

    et tous les noeuds ont la property $dom->formatOutput == TRUE ?
    PHP fait nativement la validation d'adresse électronique .
    Celui qui a inventé mysql_connect(...) or die() est déjà mort plusieurs fois.
    Soyez moderne: mysqli_connect() or throw Exception(mysqli_connect_error());

    PHP: un problème ? décrivez le avec ceci.

    Utilisez le bouton résolu!

  5. #5
    Membre du Club
    Inscrit en
    février 2008
    Messages
    257
    Détails du profil
    Informations forums :
    Inscription : février 2008
    Messages : 257
    Points : 49
    Points
    49

    Par défaut

    Non, La propriété $dom->formatOutput = TRUE est déclarée une seule fois après l'instanciation de l'objet DomDocument.
    Est ce que je dois la déclarer pour chaque noeud ?

Discussions similaires

  1. Parser un fichier xml sur une ligne
    Par lokomass dans le forum Shell et commandes GNU
    Réponses: 1
    Dernier message: 27/02/2015, 17h37
  2. [XL-2013] Script pour mettre des données sur une même ligne
    Par initial32 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 09/12/2014, 13h45
  3. [OpenOffice][Tableur] Affichage données sur une même ligne.
    Par lestoss dans le forum OpenOffice & LibreOffice
    Réponses: 0
    Dernier message: 11/04/2012, 19h15
  4. Réponses: 1
    Dernier message: 08/01/2010, 13h46
  5. [XHTML] 2 données sur une même ligne
    Par Bayard dans le forum Balisage (X)HTML et validation W3C
    Réponses: 3
    Dernier message: 28/10/2007, 22h17

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo