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 :

Probleme Boucle foreach


Sujet :

Langage PHP

  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 34
    Par défaut Probleme Boucle foreach
    Bonjour a vous,

    J'ai un petit problème avec une boucle foreach.
    Je parse un flux rss via PHP et j'affiche le résultat via une boucle foreach. En lacal, sur wamp, ça marche très bien. En ligne, j'ai l'erreur suivante: Warning: Invalid argument supplied for foreach()

    le 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
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    // Lecture d'un fichier XML
    function lit_rss($fichier,$champs) {
       // on lit le fichier
       if($chaine = @implode("",@file($fichier))) {
          // on explode sur <item>
          $tmp = preg_split("/<\/?"."item".">/",$chaine);
          // pour chaque <item>
          for($i=1;$i<sizeof($tmp)-1;$i+=2)
             // on lit les champs demand? <champ>
             foreach($champs as $champ) {
                $tmp2 = preg_split("/<\/?".$champ.">/",$tmp[$i]);
                // on ajoute au tableau
                $tmp3[$i-1][] = @$tmp2[1];
             }
          // et on retourne le tableau
          return $tmp3;
       }
     
    }
     
     
    $rss = lit_rss("lefluxrss.xml",array("title"));
    // et on affiche..
     
     
    foreach($rss as $tab) {
     
    if(preg_match("<\!\[CDATA\[(.*)\]\]>",$tab[0],$cdata)) {
            $tab[0]=$cdata[1];
            }
            else {
            $tab[0]=$tab[0];
            }
     
      echo '<div class="news_box">
               <div class="news_box_title">'.$tab[0].'</div>
     
            </div>';
    }
    merci a vous

  2. #2
    Membre très actif Avatar de zulad
    Homme Profil pro
    creatif
    Inscrit en
    Juin 2007
    Messages
    714
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 52
    Localisation : Belgique

    Informations professionnelles :
    Activité : creatif

    Informations forums :
    Inscription : Juin 2007
    Messages : 714
    Par défaut
    L'erreur dit qu'il n'a pas de données interprétable pour la boucle. Tu es sur que ce n'est pas un probleme de path ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 34
    Par défaut
    Certain. Cela fonctionne en local et le flux vient d'un autre site.

  4. #4
    Membre Expert
    Avatar de transgohan
    Homme Profil pro
    Développeur Temps réel Embarqué
    Inscrit en
    Janvier 2011
    Messages
    3 149
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Maine et Loire (Pays de la Loire)

    Informations professionnelles :
    Activité : Développeur Temps réel Embarqué

    Informations forums :
    Inscription : Janvier 2011
    Messages : 3 149
    Par défaut
    Enlèves les @ (très mauvaise pratique je trouve...) et tu verras surement une erreur indiquant que l'accès aux fichiers distants est désactivé sur ton serveur.

  5. #5
    Membre averti
    Profil pro
    Inscrit en
    Décembre 2007
    Messages
    34
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2007
    Messages : 34
    Par défaut
    c'était effectivement ça. Problème résolu. merci.

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

Discussions similaires

  1. probleme de boucle (foreach)
    Par papouuu86 dans le forum Langage
    Réponses: 15
    Dernier message: 21/10/2009, 15h46
  2. probleme boucle foreach simplexml
    Par magieweb dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 19/01/2009, 21h49
  3. [C# 1.1]Boucles foreach imbriquees
    Par Nip dans le forum Windows Forms
    Réponses: 12
    Dernier message: 13/04/2006, 16h35
  4. [Tableaux] la boucle foreach
    Par jeanfrancois dans le forum Langage
    Réponses: 7
    Dernier message: 09/03/2006, 17h29
  5. [LG]Problême Boucle
    Par pierrOPSG dans le forum Langage
    Réponses: 1
    Dernier message: 29/04/2004, 16h48

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