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

Langage PHP Discussion :

Lecture d'un fichier XML


Sujet :

Langage PHP

Vue hybride

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

    Informations forums :
    Inscription : Octobre 2007
    Messages : 87
    Par défaut Lecture d'un fichier XML
    Bonjour !

    Je fais appel à vous car j'aimerai faire ceci :

    Sur une page j'ai une image et j'aimerais que celle-ci change ou pas après lecture d'un fichier XML (avec DOM).

    C'est à dire que j'ai un xml du type:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <Alerte> 
      	<alerte1>0</alerte1>
      	<alerte2>1</alerte2>
      	<alerte3>0</alerte3>
    </Alerte>
    au chargement de ma page j'ai un petit feu vert et j'aimerais le remplacer par un feu rouge dès que dans mon XML il trouve un 1.

    Je galère un peu avec le DOM...

    j'espère avoir été clair

    merci de votre aide

  2. #2
    Membre Expert
    Avatar de Thes32
    Homme Profil pro
    Développeur PHP, .Net, T-SQL
    Inscrit en
    Décembre 2006
    Messages
    2 379
    Détails du profil
    Informations personnelles :
    Sexe : Homme

    Informations professionnelles :
    Activité : Développeur PHP, .Net, T-SQL

    Informations forums :
    Inscription : Décembre 2006
    Messages : 2 379
    Par défaut
    Salut,
    déjà ça serait mieux que ton xml soit de la forme :
    Code xml : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    <Alertes> 
      	<alerte>0</alerte>
      	<alerte>1</alerte>
      	<alerte>0</alerte>
    </Alertes>
    dans tous les cas ton code devra ressembler à ceci
    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
     
    <?php
    $xml_string = <<<XMLSTRING
    <Alertes> 
      	<alerte>0</alerte>
      	<alerte>1</alerte>
      	<alerte>0</alerte>
    </Alertes>
    XMLSTRING;
     
    $xmldoc = new DOMDocument();
    $xmldoc->loadXML( $xml_string );
    $root = $xmldoc->getElementsByTagName  ( 'Alertes' )
    $root = $root[0];
    $alertes = $root->childNodes;
    foreach ($alertes as $alerte)
    {
      if( $alerte->textContent == '1')
      {
         //ton action ici
      }
    }
    ?>

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 87
    Par défaut
    Merci pour ta réponse.

    En effet ça m'arrangerait aussi qu'il soit sous cette forme mais ce n'est pas moi qui le gère le xml, je le reçois ainsi et je me débrouille

    J'étudie ce que tu m'a envoyé et je te tiens au courant

  4. #4
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 87
    Par défaut
    Ton code code m'a bien aidé, je l'ai modifier ainsi :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    $xml = new DomDocument();
    $xml->load('xml/Alarmes/Alarmes.xml');
    foreach($xml->getElementsByTagName('Alarmes') as $alarmes) {
    	foreach($alarmes->childNodes as $Alarme) {
    			if($Alarme->textContent == '1')
    				echo'TEST';
    	}
    }
    Là il parcours comme ça toutes les alertes, et je garde la forme du xml d'origine

    Merci encore

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    87
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 87
    Par défaut
    quoique que je me suis emporté un peu vite car il m'affiche mon echo à chaque fois qu'il trouve un 1, si j'ai trois 1 je me retrouve avec "testestest" au lieu de m'afficher "test"

  6. #6
    Membre expérimenté

    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
    Par défaut
    Ajouter un
    dans votre condition pour sortir des deux foreach ?

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

Discussions similaires

  1. Problème de lecture d'un fichier XML d'InfoPath
    Par snadus dans le forum InfoPath
    Réponses: 7
    Dernier message: 06/06/2006, 14h45
  2. Lecture d'un fichier XML de config avec Java
    Par cofy dans le forum Format d'échange (XML, JSON...)
    Réponses: 6
    Dernier message: 31/01/2006, 15h54
  3. Problème de lecture dans un fichier xml
    Par Pyra dans le forum Langage
    Réponses: 2
    Dernier message: 18/12/2005, 00h13
  4. Probleme de lecture d'un fichier XML
    Par chleuh dans le forum Langage
    Réponses: 8
    Dernier message: 30/08/2005, 12h04
  5. [C#] [XML] Lecture d'un fichier XML => Combobox
    Par Chad`Chiwa dans le forum Windows Forms
    Réponses: 8
    Dernier message: 09/03/2005, 08h57

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