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 :

PHP - DOM - Boucle et concaténation


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 61
    Par défaut PHP - DOM - Boucle et concaténation
    Bonjour à tous,

    J'ai un problème avec un script php, je voudrais créer un lien à l'air de 2 données contenues dans un fichier xml que je récupère grâce au DOM.

    Tout marche à peu près bien sauf que lorsque ma boucle s'affiche j'ai sur mon lien hypertexte (qui récupère une de mes variable) toujours la dernière valeur stockée en mémoire (sur tout mes liens affichés grâce à ma boucle).

    Est-ce une des limites du DOM?

    Voici ma boucle :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    				$listerpage = $dom->getElementsByTagName("navPoint");
    				foreach($listerpage as $navMap)
    					{
    						echo ('<a href="');
    						echo  $content->getAttribute("src");
    						echo ('">');
    						echo $navMap->nodeValue;
    						echo ('</a> <br/>');
    						echo ('<br/> <br/>');
    					}
    Cordialement,

  2. #2
    Membre Expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Par défaut
    Bonjour j'aurais pas fais de même car tu restes sur la même valeur forcement, il faut utiliser les childs

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    $listerpage = $dom->getElementsByTagName("navPoint");
     
    foreach($listerpage as $navMap){
    	echo ('<a href="');
    	echo  $content->getAttribute("src");
    	echo ('">');
    	echo $navMap->childNodes[0]->nodeValue;
    	echo ('</a> <br/>');
    	echo ('<br/> <br/>');
    }
    Bon je le fais en js normalement donc à vérifier pour atteindre les fils.

  3. #3
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 61
    Par défaut
    Oui mais ils ne se chargent pas en fonction de l'autre noeud malheureusement, je ne vois vraiment pas comment faire

  4. #4
    Membre Expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Par défaut
    Avant le foreach, donnes moi un var_dump de $listerpage

  5. #5
    Membre confirmé
    Homme Profil pro
    Inscrit en
    Octobre 2011
    Messages
    61
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Octobre 2011
    Messages : 61
    Par défaut
    C'est fait,

    cela affiche object(DOMNodeList)[6]

  6. #6
    Membre Expert Avatar de Fench
    Homme Profil pro
    Chercheur en informatique
    Inscrit en
    Mai 2002
    Messages
    2 353
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Groenland

    Informations professionnelles :
    Activité : Chercheur en informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Mai 2002
    Messages : 2 353
    Par défaut
    Oui donc c bien ce que je pensais (car j'utilise perso ces fonction en js), tu essayes de faire un foreach sur un objet ...

    Va falloir utiliser une boucle normal avec l'objet DOMNodeList

Discussions similaires

  1. [DOM] problème de syntaxe
    Par punky_brooster dans le forum Bibliothèques et frameworks
    Réponses: 1
    Dernier message: 18/12/2006, 13h23
  2. [PHP-JS] Problème avec concaténation
    Par djedje37et28 dans le forum Langage
    Réponses: 30
    Dernier message: 21/07/2006, 16h59
  3. [PHP/DOM] XPath ?
    Par laetyboop dans le forum XSL/XSLT/XPATH
    Réponses: 5
    Dernier message: 20/07/2006, 09h16
  4. [PHP-JS] Boucle /script JavaScript /PHP
    Par ghita269 dans le forum Langage
    Réponses: 5
    Dernier message: 14/07/2006, 15h54
  5. [XML-PHP-DOM] Application web, gestion de la mémoire
    Par Zini dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 12/04/2006, 10h36

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