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 :

[XML] [XMLReader] Contenu d'un fichier XML


Sujet :

Bibliothèques et frameworks PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 80
    Par défaut [XML] [XMLReader] Contenu d'un fichier XML
    Bonjour à tous,
    Je recois un fichier XML du type :
    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
    <?xml version="1.0" encoding="UTF-8"?>
        <datas>
             <client>
                 <id_client>1</id_client>
                 <nom>DURAND</nom>
                 <prenom>Paul</prenom>
                 .......
             </client>
             ........
             <commande>
                 <id_commande>256</id_commande>
                 <ref_commande>AYDE25</ref_commande>
                 ......
             </commande>
    ............
       </datas>
    J'aimerais lire le contenu de ce fichier avec XMLReader ( je ne peux pas utiliser SimpleXML ou autres ) afin de mettre à jour ma base de donnée avec mes tables CLIENT(id, nom, prenom...) et Commande(id, ref...)
    Je suis un peu perdu pour faire la boucle qui va lire le XML.
    Merci de votre aide

  2. #2
    Membre Expert
    Avatar de trotters213
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 571
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 571
    Par défaut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $xml = new XMLReader();
    $xml->open('ton_fichier.xml');
    while($xml->read())
    {
       echo $xml->value;
    }
    ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 80
    Par défaut
    le value me renvoie juste la valeur mais j'aimerais récupérer aussi la balise ( ex : prenom ) et la table correspondante (ex : client ).

  4. #4
    Membre Expert
    Avatar de trotters213
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    2 571
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France, Gard (Languedoc Roussillon)

    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 571
    Par défaut
    Faut se donner la peine de chercher un peu : tu as tout là dedans http://fr.php.net/manual/fr/class.xmlreader.php

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 80
    Par défaut
    J'ai juste pu faire ca ( qui est pas super puissant mais bon ) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    $reader 		= new XMLReader();
    $reader->open($xml);
    while ($reader->read()){
    	if($reader->nodeType == XMLREADER::ELEMENT){
    			$parent_name = $reader->localName;
    	}
          	if ($reader->hasValue && $reader->nodeType == 3){
           	       echo " champ : ".$parent_name;
          	       echo ": valeur du champ : " .$reader->value;
                   echo "</br>";
           }
    }
    Par contre, je n'ai tjs pas la balise qui m'indique dans quel table je dois etre ( CLIENT )

  6. #6
    Membre confirmé
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    80
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2008
    Messages : 80
    Par défaut
    De plus, j'aimerais boucler sur chaque enregistrement, faire les clients un par un et savoir à quel moment j'enregistre un nouveau client etc...
    Je sais pas trop comment faire..
    Merci bien !

Discussions similaires

  1. [AJAX] Lecture et affichage du contenu d'un fichier xml dans un menu deroulant
    Par undercrash dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 15/01/2008, 17h26
  2. [JDOM] [Debutant] charger le contenu d'un fichier XMl dans un String
    Par apoca dans le forum Format d'échange (XML, JSON...)
    Réponses: 1
    Dernier message: 17/10/2007, 19h24
  3. changer le contenu d'un fichier xml.
    Par mun_a dans le forum Général Python
    Réponses: 2
    Dernier message: 24/08/2007, 15h34
  4. [XML] [EXPAT] Mise en memoire d'information contenue dans un fichier XML
    Par websurfeur dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 11/04/2007, 15h16
  5. Lire le contenu d'un fichier xml
    Par Invité dans le forum Bibliothèques
    Réponses: 4
    Dernier message: 10/01/2006, 20h13

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