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] Problème de lecture


Sujet :

Bibliothèques et frameworks PHP

  1. #1
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 379
    Par défaut [DOM] Problème de lecture
    Bonjour,

    J'ai un problème de lecture d'un fichier XML, la structure de ce dernier est un peu compliquée en fait.

    Je vous montre la structure

    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
    <groupes>
      <groupe>
        <id></id>
        <nom></nom>
        <biographie></biographie>
        <photos>
          <photo></photo>
        </photos>
        <mp3s>
          <album><mp3><titre></titre><lien></lien></mp3></album>
          <album><mp3><titre></titre><lien></lien></mp3></album>
        </mp3s>
        <news>
          <new>
            <date></date>
            <desc></desc>
          </new>
        </news>
      </groupe>
    </groupes>
    Mon problème est en fait avec la partie mp3s, je lire les mp3 de chaque album, de façon séparée, pour assigner chaque mp3 au bon album! Je ne trouve pas le code nécessaire pour faire cela, l'expression XPath me retourne tous les titre et lien en même temps!

    Aidez moi svp



    ...

  2. #2
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 342
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 342
    Billets dans le blog
    17
    Par défaut
    Citation Envoyé par Mo_Poly Voir le message
    Mon problème est en fait avec la partie mp3s, je [voudrais?] lire les mp3 de chaque album, de façon séparée, pour assigner chaque mp3 au bon album! Je ne trouve pas le code nécessaire pour faire cela, l'expression XPath me retourne tous les titre et lien en même temps!
    Et si tu récupèrais les <album> ? Tu pourrais ensuite boucler sur chq <mp3> enfant.

  3. #3
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 379
    Par défaut
    Salut,

    J'ai essayé un truc là, et je ne comprend pas le resultat, par exemple pour ces données:

    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
    <groupes>
      <groupe>
        <id></id>
        <nom></nom>
        <biographie></biographie>
        <photos>
          <photo></photo>
        </photos>
        <mp3s>
          <album>nom album1<mp3><titre>1</titre><lien>1</lien></mp3></album>
          <album>nom album2<mp3><titre>2</titre><lien>2</lien></mp3></album>
        </mp3s>
        <news>
          <new>
            <date></date>
            <desc></desc>
          </new>
        </news>
      </groupe>
    </groupes>

    J'ai essayé ce code:

    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
     
    foreach ($dom->getElementsByTagName('groupe') as $struct) 
    {
     
    ...
     
     
     
    $xpath = new DOMXPath($struct->ownerDocument);
    $albs= $xpath->query('mp3s/album', $struct);
     
     
    for($i=0;$i<$albs->length;$i++)
    {
    			echo stripslashes($albs->item($i)->nodeValue)."<br>";
    }
    J'obtient l'affichage suivant :

    nom album111
    nom album222

    c'est à dire les titres et liens s'affichent aussi! Je ne comprend pas cette erreur, c'est surement une erreur de l'expression XPATH


    aidez moi svp


    Merci


    ...

  4. #4
    Expert confirmé
    Avatar de Séb.
    Profil pro
    Inscrit en
    Mars 2005
    Messages
    5 342
    Détails du profil
    Informations personnelles :
    Âge : 47
    Localisation : France

    Informations professionnelles :
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Mars 2005
    Messages : 5 342
    Billets dans le blog
    17
    Par défaut
    Et bien c'est normal car ton élément ne contient pas que le nom de l'album.
    Essaie en passant par l'attribut firstChild : $albs->item($i)->firstChild->nodeValue
    Ou bien en ne changeant que ton expression XPath : //album/text( )
    Mais pour faire propre tu devrais utiliser un sous-élément <nom> ou donner un attribut nom à tes éléments <album>.

  5. #5
    Membre éclairé
    Profil pro
    Étudiant
    Inscrit en
    Février 2007
    Messages
    379
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2007
    Messages : 379
    Par défaut
    parfait merci


    ...

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

Discussions similaires

  1. [XML][DOM][ZIP] Problème de lecture dans un zip
    Par gocin dans le forum Format d'échange (XML, JSON...)
    Réponses: 2
    Dernier message: 04/04/2007, 11h41
  2. [dom][sax]problème à le lecture d'un fichier
    Par floanne dans le forum Format d'échange (XML, JSON...)
    Réponses: 3
    Dernier message: 02/04/2007, 15h06
  3. [DOM] Problème de lecture avec DOM
    Par samios dans le forum Format d'échange (XML, JSON...)
    Réponses: 5
    Dernier message: 29/09/2004, 15h58
  4. [fread] Problème de lecture de buffer
    Par karl3i dans le forum C
    Réponses: 2
    Dernier message: 25/09/2003, 09h21
  5. Réponses: 4
    Dernier message: 23/07/2003, 13h07

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