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 :

[SimpleXML] Afficher le contenu d'une balise définie par son attribut


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 186
    Points : 80
    Points
    80
    Par défaut [SimpleXML] Afficher le contenu d'une balise définie par son attribut
    Bonjour,
    J'ai un petit problème que je n'arrive pas à résoudre. Peut-être serez vous mieux inspiré !
    Voilà, j'ai le fichier XML "ENREGISTREMENTS_XML.xml" suivant :
    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
    <?xml version="1.0" encoding="UTF-8"?>
    <?xml-stylesheet type="text/css" href="css/CSS.css"?>
    <?xml-stylesheet type="text/xsl" href="XSLT.xsl"?>
    <enregistrements>
       <audios>
          <enseignements>
             <auteur nom="Sympa">Heu 1
    		    <album>
    		    </album>
             </auteur>
             <auteur nom="Super">Heu 2
    		    <album>
    		    </album>
    		 </auteur>
          </enseignements>
       </audios>
    </enregistrements>
    et j'ai ce petit pgm PHP qui fonctionne très bien :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <?php
    $xml_file = simplexml_load_file('ENREGISTREMENTS_XML.xml'); 
     
    $title =  $xml_file->xpath('audios/enseignements/auteur/@nom');
    echo $title[1];
    ?>
    -> Ca affiche sur mon navigateur :
    "Super"
    Mais si je souhaite toujours afficher le contenu de <auteur>, mais repéré cette fois-ci par le nom de l'attribut "Super" (c'est à dire "Heu 1"), là je cale un peu !
    -> Auriez-vous une suggestion à me proposer, en SimpleXML (+- avec Xpath) ?
    Par avance Merci !

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    <?php
    $xml_file = simplexml_load_file('ENREGISTREMENTS_XML.xml'); 
    $value = 'Super';
    $title = $xml_file->xpath('audios/enseignements/auteur[@nom = "' . $value . '"]');
    echo trim($title[0]);
    Ça ?

    Parce que vos explications ne sont pas cohérentes : Super n'est pas le nom de l'attribut mais une valeur de l'attribut nom. Et la "valeur" du noeud /enregistrements/audios/enseignements/auteur[@nom = "Super"] c'est plutôt "Heu 2" (aux blancs prêts).

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Août 2009
    Messages
    186
    Détails du profil
    Informations personnelles :
    Âge : 59
    Localisation : France

    Informations forums :
    Inscription : Août 2009
    Messages : 186
    Points : 80
    Points
    80
    Par défaut
    Saisissant !
    Enfin, moi je trouve (néophyte que je suis / au SimpleXML...) !
    Merci beaucoup, Julp, car, en effet, non seulement votre proposition correspond exactement à ce que je recherchais, mais en plus, vous m'aidez à corriger positivement mes erreurs du moment !
    Très bonne continuation à vous !

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

Discussions similaires

  1. regexp = extraire value d'une balise input par son "name"
    Par NoobX dans le forum Général JavaScript
    Réponses: 5
    Dernier message: 18/06/2008, 16h03
  2. cacher/afficher le contenu d'une balise
    Par sev2008 dans le forum Général JavaScript
    Réponses: 2
    Dernier message: 31/03/2008, 17h54
  3. [MySQL] Afficher le contenu d'une table MYSQL selon un critère bien défini
    Par Webnadou dans le forum PHP & Base de données
    Réponses: 1
    Dernier message: 28/09/2007, 21h38
  4. [SimpleXML] Récupérer contenu d'une balise XML contenant du HTML
    Par samichon dans le forum Bibliothèques et frameworks
    Réponses: 4
    Dernier message: 24/08/2007, 08h36

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