IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Bibliothèques et frameworks PHP Discussion :

[DOM] Création de balise XML


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut [DOM] Création de balise XML
    Bonjour,

    J'ai code php qui utilise dom qui marche presque sauf qu'il ne fais pas complétement ce que je veux, le code sera mieux qu'un long discours donc le voici.

    dom.php

    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
    <?php
      $dom=new DomDocument();
     
      $dom->load("fichier.xml");
     
     
    $newphoto = $dom->createElement('photo');
    $newnom = $dom->createElement('nom','bapteme.jpg');
    $newdescription = $dom->createElement('description');
    $newevenenement = $dom->createElement('evenenement','bapteme');
    $newprotagoniste = $dom->createElement('protagoniste');
    $newpersonnage = $dom->createElement('max','personnage');
    $newpersonnage = $dom->createElement('personnage','caroline');
     
     
    $dom->appendChild($newphoto);
    $newphoto->appendChild($newnom);
    $newphoto->appendChild($newdescription);
    $newphoto->appendChild($newevenenement);
    $newphoto->appendChild($newprotagoniste);
    $newphoto->appendChild($newpersonnage);
    $newphoto->appendChild($newpersonnage);
     
      $dom->formatOutput = true;
     
      $dom->save("fichier.xml");
    ?>
    Mon fichier xml

    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <galerie>
    <photo>
    <nom>mariage.jpg</nom>
    <description>
    	<evenement>mariage</evenement>
    		<protagoniste>
    			<personnage>Mamie</personnage>
    			<personnage>pablo</personnage>
    		</protagoniste>
    </description>
    </photo>
    </galerie>

    Ce que j'obtient aprés dom.
    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
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <galerie>
    <photo>
    <nom>mariage.jpg</nom>
    <description>
    	<evenement>mariage</evenement>
    		<protagoniste>
    			<personnage>Mamie</personnage>
    			<personnage>pablo</personnage>
    		</protagoniste>
    </description>
    </photo>
    </galerie>
    <photo>
      <nom>bapteme.jpg</nom>
      <description/>
      <evenenement>bapteme</evenenement>
      <protagoniste/>
      <personnage>caroline</personnage>
    </photo>
    donc voila le code que j'arrive a créé en ropuge grace a mon fichier php sauf que je n'arrive pas a que ca ressemble exactement a ce qui est en bleu et bien sur j'aimerais que ce bout de code se retrouve entre les balise galerie

    Merci a vous !

  2. #2
    Membre émérite
    Avatar de Nesmontou
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Septembre 2004
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 612
    Points : 2 969
    Points
    2 969
    Par défaut
    Salut, il me semble qu'il y a des inversions dans tes appendChild ; le code suivant semble marchait
    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
    $dom=new DomDocument();
     
    $dom->load("fichier.xml");
    $galeries = $dom->getElementsByTagName('galerie');
    $galerie = $galeries->item(0);
     
     
    $newphoto = $dom->createElement('photo');
    $newnom = $dom->createElement('nom','bapteme.jpg');
    $newdescription = $dom->createElement('description');
    $newevenenement = $dom->createElement('evenenement','bapteme');
    $newprotagoniste = $dom->createElement('protagoniste');
    $newpersonnage1 = $dom->createElement('personnage','max');
    $newpersonnage2 = $dom->createElement('personnage','caroline');
     
     
    $galerie->appendChild($newphoto);
    $newphoto->appendChild($newnom);
    $newphoto->appendChild($newdescription);
    $newdescription->appendChild($newevenenement);
    $newdescription->appendChild($newprotagoniste);
    $newprotagoniste->appendChild($newpersonnage1);
    $newprotagoniste->appendChild($newpersonnage2);
     
    $dom->formatOutput = true;
     
    $dom->save("fichier.xml");
    Je ne suis pas sûr que la méthode pour récupérer la racine soit très "conventionnelle"
    Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement. Albert EINSTEIN

    F.A.Q. : Java, PHP, (X)HTML / CSS

    N'oubliez pas de cliquer sur le bouton Résolu en bas de page quand vous avez obtenu une solution à votre problème

  3. #3
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Merci je rentre bien dans mes balises galerie sauf que mes balises description et protagoniste son pas ouvert et que fermettante et que tout es en ligne maintenant c bizarre

    Merci a toi

    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <galerie>
    <photo>
    <nom>mariage.jpg</nom>
    <description>
    	<evenement>mariage</evenement>
    		<protagoniste>
    			<personnage>Mamie</personnage>
    			<personnage>pablo</personnage>
    		</protagoniste>
    </description>
    </photo>
    <photo><nom>bapteme.jpg</nom><description/><evenenement>bapteme</evenenement><protagoniste/><personnage>max</personnage><personnage>caroline</personnage></photo></galerie>

  4. #4
    Membre émérite
    Avatar de Nesmontou
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Septembre 2004
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 612
    Points : 2 969
    Points
    2 969
    Par défaut
    Ah bon ? Je te donne le code que j'ai testé

    fichier.xml (original)
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <galerie>
    <photo>
    <nom>mariage.jpg</nom>
    <description>
    	<evenement>mariage</evenement>
    		<protagoniste>
    			<personnage>Mamie</personnage>
    			<personnage>pablo</personnage>
    		</protagoniste>
    </description>
    </photo>
    </galerie>

    dom.php
    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
    <?php
    $dom=new DomDocument();
     
    $dom->load("fichier.xml");
    $galeries = $dom->getElementsByTagName('galerie');
    $galerie = $galeries->item(0);
     
    $newphoto = $dom->createElement('photo');
    $newnom = $dom->createElement('nom','bapteme.jpg');
    $newdescription = $dom->createElement('description');
    $newevenenement = $dom->createElement('evenenement','bapteme');
    $newprotagoniste = $dom->createElement('protagoniste');
    $newpersonnage1 = $dom->createElement('personnage','max');
    $newpersonnage2 = $dom->createElement('personnage','caroline');
     
    $galerie->appendChild($newphoto);
    $newphoto->appendChild($newnom);
    $newphoto->appendChild($newdescription);
    $newdescription->appendChild($newevenenement);
    $newdescription->appendChild($newprotagoniste);
    $newprotagoniste->appendChild($newpersonnage1);
    $newprotagoniste->appendChild($newpersonnage2);
     
    $dom->formatOutput = true;
     
    $dom->save("fichier.xml");
    ?>
    fichier.xml (après application du script)
    Code XML : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    <?xml version="1.0" encoding="ISO-8859-1"?>
    <galerie>
    <photo>
    <nom>mariage.jpg</nom>
    <description>
    	<evenement>mariage</evenement>
    		<protagoniste>
    			<personnage>Mamie</personnage>
    			<personnage>pablo</personnage>
    		</protagoniste>
    </description>
    </photo>
    <photo><nom>bapteme.jpg</nom><description><evenenement>bapteme</evenenement><protagoniste><personnage>max</personnage><personnage>caroline</personnage></protagoniste></description></photo></galerie>

    Je t'ai fait des copier/coller tels quels pour que tu vois ce que j'obtiens

    Obtenu avec Apache2 / PHP5

    J'espère que ça pourra t'aider
    Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement. Albert EINSTEIN

    F.A.Q. : Java, PHP, (X)HTML / CSS

    N'oubliez pas de cliquer sur le bouton Résolu en bas de page quand vous avez obtenu une solution à votre problème

  5. #5
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    Merci ca marche nickel mais serais tu pourquoi elle se présente en ligne et plus en colonne ?

    Merci encore !!

  6. #6
    Membre émérite
    Avatar de Nesmontou
    Homme Profil pro
    Architecte logiciel
    Inscrit en
    Septembre 2004
    Messages
    1 612
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Architecte logiciel
    Secteur : Finance

    Informations forums :
    Inscription : Septembre 2004
    Messages : 1 612
    Points : 2 969
    Points
    2 969
    Par défaut
    Désolé, mais là j'avoue que je ne sais pas du tout

    Mais je continue de chercher
    Si vous ne pouvez expliquer un concept à un enfant de six ans, c'est que vous ne le comprenez pas complètement. Albert EINSTEIN

    F.A.Q. : Java, PHP, (X)HTML / CSS

    N'oubliez pas de cliquer sur le bouton Résolu en bas de page quand vous avez obtenu une solution à votre problème

  7. #7
    Membre régulier Avatar de Shandler
    Profil pro
    Inscrit en
    Février 2005
    Messages
    514
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 514
    Points : 107
    Points
    107
    Par défaut
    merci beaucoup moi aussi je cherche et j'ai pensé a simplexml mais j'arrive pas a comprendre comment on insére des balises dans un fichier.xml comme avec dom.

    merci encore

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [DOM] Création de fichier XML format spécifique avec PHP
    Par aurelie20 dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 20/11/2012, 14h43
  2. [DOM] création de fichier XML avec PHP
    Par fleuveblanc dans le forum Bibliothèques et frameworks
    Réponses: 2
    Dernier message: 17/12/2007, 17h36
  3. [DOM] création de fichier XML avec PHP
    Par cortex007 dans le forum Bibliothèques et frameworks
    Réponses: 7
    Dernier message: 09/12/2007, 11h31
  4. [DOM] Création de noeud XML avec le DOM
    Par BkD35 dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 07/12/2007, 11h09
  5. [DOM] Création d'un noeud xml avec childNode
    Par starr dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 22/03/2007, 11h18

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