Publicité
+ Répondre à la discussion
Affichage des résultats 1 à 5 sur 5
  1. #1
    Membre du Club
    Inscrit en
    février 2008
    Messages
    255
    Détails du profil
    Informations forums :
    Inscription : février 2008
    Messages : 255
    Points : 48
    Points
    48

    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 :
    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 :
    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 122
    Points
    2 122

    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
    255
    Détails du profil
    Informations forums :
    Inscription : février 2008
    Messages : 255
    Points : 48
    Points
    48

    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 122
    Points
    2 122

    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
    255
    Détails du profil
    Informations forums :
    Inscription : février 2008
    Messages : 255
    Points : 48
    Points
    48

    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 ?

Liens sociaux

Règles de messages

  • Vous ne pouvez pas créer de nouvelles discussions
  • Vous ne pouvez pas envoyer des réponses
  • Vous ne pouvez pas envoyer des pièces jointes
  • Vous ne pouvez pas modifier vos messages
  •