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

XML/XSL et SOAP Discussion :

xml valeur ""


Sujet :

XML/XSL et SOAP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Juin 2011
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 74
    Par défaut xml valeur ""
    J'ai écrit
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    <com>
    <a></a>
    <b>b</b>
    </com>
    dans le fichier xml.
    Je voudrais obtenir la valeur, dans mon fichier PHP, j'ai fait ça:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    xmlDoc.getElementsByTagName("a")[0].firstChild.nodeValue
    ca ne fonctionne pas, comment à faire ça? Merci

  2. #2
    Membre expérimenté
    Profil pro
    Inscrit en
    Février 2005
    Messages
    351
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Février 2005
    Messages : 351
    Par défaut
    Salut laomaotou,

    Je ne connais pas très bien PHP. Mais peut être que le problème est tout simple à résoudre. Au leiu de mette "a", as-tu déjà essayé cela: 'a'?

    Cédric

  3. #3
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 582
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 582
    Par défaut
    Je ne connais pas PHP non plus, mais <a> étant vide, il n'a, par définition, pas de firstChild.

    Le plus simple serait d'avoir accès à la fonction XPath string() : appliquée à un élément vide elle retourne la chaîne vide, appliquée à un élément qui contient du texte elle retourne le texte.
    Reste à trouver comment faire ça en PHP...
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

  4. #4
    Membre averti
    Homme Profil pro
    Enseignant
    Inscrit en
    Juillet 2011
    Messages
    17
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Juillet 2011
    Messages : 17
    Par défaut
    Bonjour,

    Il me semble que nodeValue retourne la chaîne vide si l'élément est vide ou le texte de l'élément sinon. Cependant, la syntaxe utilisée me semble bizarre et je ne comprends pas ce qu'il s'agit de faire. S'il s'agit de récupérer la valeur du premier élément <a>, j'écrirais plutôt :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $document = new DOMDocument() ;
    $document -> load('fichier.xml') ;
    // Obtenir la valeur du premier <a>
    $element = $document -> getElementsByTagName("a") ;
    $valeur = $element -> item(0) -> nodeValue ;
    /**
        @todo faire quelque chose avec $valeur
    */
    Mais il est clair que $valeur est alors vide.

    S'il s'agit de récupérer la valeur de chaque élément sous la racine du document, j'écrirais :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $elements = $document -> getElementsByTagName("*") ;
    $nombre = $elements -> length ;
    for($i=0 ; $i < $nombre ; $i++)
        {
         $valeur = $elements -> item($i) -> nodeValue ;
          /**
            @todo faire quelque chose avec $valeur
         */
         }
    Tout ceci doit être vérifié.

    HTH

  5. #5
    Membre confirmé
    Femme Profil pro
    Inscrit en
    Juin 2011
    Messages
    74
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations forums :
    Inscription : Juin 2011
    Messages : 74
    Par défaut
    Merci à tous!
    Mon firstChild est vide, c'est mon problème.
    Je utilise hasChildNodes() pour tester, c'est bon maintenant.

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

Discussions similaires

  1. Concaténation de plusieurs valeurs : des quotes qui manquent ?
    Par Palsajicoco dans le forum Général JavaScript
    Réponses: 3
    Dernier message: 30/03/2011, 14h26
  2. Réponses: 1
    Dernier message: 13/09/2007, 16h57
  3. [DOM] JAVA & XML : valeur d'un noeud ELEMENT_NODE
    Par afadel dans le forum Format d'échange (XML, JSON...)
    Réponses: 4
    Dernier message: 09/06/2005, 18h46

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