PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 27-06-2012 13:34:15

yawn
Membre
Inscription : 27-06-2012
Messages : 2

Utilisation de simpleXML

Bonjour, j'essaie d'afficher le contenu d'un flux rss mais je n'y parviens pas.

Le fichier xml est le suivant :


<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
  xmlns:content="http://purl.org/rss/1.0/modules/content/"
  xmlns:wfw="http://wellformedweb.org/CommentAPI/"
  xmlns:dc="http://purl.org/dc/elements/1.1/"
  xmlns:atom="http://www.w3.org/2005/Atom"
  xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
  xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
  xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:media="http://search.yahoo.com/mrss/"
  >

<channel>
  <title>Armer Désarmer</title>
  <atom:link href="http://armerdesarmer.wordpress.com/feed/" rel="self" type="application/rss+xml" />
  <link>http://armerdesarmer.wordpress.com</link>
  <description></description>
  <lastBuildDate>Wed, 20 Jun 2012 07:07:16 +0000</lastBuildDate>
  <language>fr</language>
  <sy:updatePeriod>hourly</sy:updatePeriod>
  <sy:updateFrequency>1</sy:updateFrequency>
  <generator>http://wordpress.com/</generator>
<cloud domain='armerdesarmer.wordpress.com' port='80' path='/?rsscloud=notify' registerProcedure='' protocol='http-post' />
<image>
    <url>http://s2.wp.com/i/buttonw-com.png</url>
    <title>Armer Désarmer</title>
    <link>http://armerdesarmer.wordpress.com</link>
  </image>
  <atom:link rel="search" type="application/opensearchdescription+xml" href="http://armerdesarmer.wordpress.com/osd.xml" title="Armer Désarmer" />
  <atom:link rel='hub' href='http://armerdesarmer.wordpress.com/?pushpress=hub'/>
    <item>
    <title>Jusqu’où les Russes vont ils aller dans leur soutien aux graves violations des droits de l’Homme en Syrie ?</title>
    <link>http://armerdesarmer.wordpress.com/2012/06/19/jusquou-les-russes-vont-ils-aller-dans-le-soutien-aux-graves-violations-des-droits-de-lhomme-en-syrie/</link>
    <comments>http://armerdesarmer.wordpress.com/2012/06/19/jusquou-les-russes-vont-ils-aller-dans-le-soutien-aux-graves-violations-des-droits-de-lhomme-en-syrie/#comments</comments>
    <pubDate>Tue, 19 Jun 2012 18:36:35 +0000</pubDate>
    <dc:creator>veillee2</dc:creator>
        <category><![CDATA[Armes]]></category>
    <category><![CDATA[Uncategorized]]></category>
    <category><![CDATA[droit de l'homme]]></category>
    <category><![CDATA[Russie]]></category>
    <category><![CDATA[Syrie]]></category>
    <category><![CDATA[traité sur le commerce des armes]]></category>

    <guid isPermaLink="false">http://armerdesarmer.wordpress.com/2012/06/19/jusquou-les-russes-vont-ils-aller-dans-le-soutien-aux-graves-violations-des-droits-de-lhomme-en-syrie/</guid>
    <description><![CDATA[Il y a trois jours le navire Russe MV ALead a été arrêté dans la mer du nord de l’Ecosse par le gouvernement britannique. Ce bateau, parti du port Russe de Kaliningrad dans la mer Baltique,  transportait des hélicoptères MI 25 et des munitions pour le gouvernement Syrien. Cet hélicoptère d’attaque Russe est appelé le [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=armerdesarmer.wordpress.com&blog=12798208&post=1019&subd=armerdesarmer&ref=&feed=1" width="1" height="1" />]]></description>
    <wfw:commentRss>http://armerdesarmer.wordpress.com/2012/06/19/jusquou-les-russes-vont-ils-aller-dans-le-soutien-aux-graves-violations-des-droits-de-lhomme-en-syrie/feed/</wfw:commentRss>
    <slash:comments>0</slash:comments>
 
    <media:content url="" medium="image">
      <media:title type="html">veillee2</media:title>
    </media:content>

    <media:content url="http://armerdesarmer.files.wordpress.com/2012/06/mi-251.jpg?w=590" medium="image">
      <media:title type="html">Image</media:title>
    </media:content>
  </item>
    <item>
    <title>République Démocratique du Congo : Le scandale de la guerre oubliée</title>
    <link>http://armerdesarmer.wordpress.com/2012/06/12/republique-democratique-du-congo-la-guerre-oubliee/</link>
    <comments>http://armerdesarmer.wordpress.com/2012/06/12/republique-democratique-du-congo-la-guerre-oubliee/#comments</comments>
    <pubDate>Tue, 12 Jun 2012 18:31:55 +0000</pubDate>
    <dc:creator>veillee2</dc:creator>
        <category><![CDATA[Armes]]></category>
    <category><![CDATA[Amnesty International]]></category>
    <category><![CDATA[kalachnikov]]></category>
    <category><![CDATA[Pascal Kabungulu]]></category>
    <category><![CDATA[république démocratique du Congo]]></category>
    <category><![CDATA[traité sur le commerce des armes]]></category>
    <category><![CDATA[violations des droits de l'homme]]></category>

    <guid isPermaLink="false">http://armerdesarmer.wordpress.com/?p=1000</guid>
    <description><![CDATA[Comme nous l’avons souvent écrit ici, depuis la guerre de août 1998, International Rescue Committee (IRC) évalue le nombre de morts à plus de 5,4 millions de femmes, d’enfants et d’hommes[1]. Lors de mes deux missions sur place avec Amnesty International, nous avons pu observer comment les armes continuaient d’arriver dans la région des grands [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=armerdesarmer.wordpress.com&blog=12798208&post=1000&subd=armerdesarmer&ref=&feed=1" width="1" height="1" />]]></description>
    <wfw:commentRss>http://armerdesarmer.wordpress.com/2012/06/12/republique-democratique-du-congo-la-guerre-oubliee/feed/</wfw:commentRss>
    <slash:comments>0</slash:comments>
 
    <media:content url="" medium="image">
      <media:title type="html">veillee2</media:title>
    </media:content>

    <media:content url="http://armerdesarmer.files.wordpress.com/2012/06/ak-47-chines-sign-2.jpg?w=1024" medium="image">
      <media:title type="html">AK 47 chines sign 2</media:title>
    </media:content>

    <media:content url="http://armerdesarmer.files.wordpress.com/2012/06/kin-3x-go92.jpg" medium="image">
      <media:title type="html">Kin 3X GO9</media:title>
    </media:content>
  </item>
    <item>
    <title>ASER pour un traité sur le commerce des armes qui protège les droits de l’Homme et respecte le droit international humanitaire.</title>
    <link>http://armerdesarmer.wordpress.com/2012/06/05/aser-pour-un-traite-sur-le-commerce-des-armes-qui-protege-les-droits-de-lhomme-et-respecte-le-droit-international-humanitaire-2/</link>
    <comments>http://armerdesarmer.wordpress.com/2012/06/05/aser-pour-un-traite-sur-le-commerce-des-armes-qui-protege-les-droits-de-lhomme-et-respecte-le-droit-international-humanitaire-2/#comments</comments>
    <pubDate>Tue, 05 Jun 2012 20:56:33 +0000</pubDate>
    <dc:creator>veillee2</dc:creator>
        <category><![CDATA[Armes]]></category>
    <category><![CDATA[Afghanistan]]></category>
    <category><![CDATA[droit de l'homme]]></category>
    <category><![CDATA[Libye]]></category>
    <category><![CDATA[république démocratique du Congo]]></category>
    <category><![CDATA[Syrie]]></category>
    <category><![CDATA[traité sur le commerce des armes]]></category>

    <guid isPermaLink="false">http://armerdesarmer.wordpress.com/?p=993</guid>
    <description><![CDATA[ASER tient à informer les nombreux lecteurs du blog Armer Désarmer que nous venons de recevoir notre accréditation officielle pour participer aux négociations du traité sur le commerce des armes ce mois de juillet à l’ONU. Nous serons donc présent cette fois en notre nom. Nous étions jusqu’à maintenant chaleureusement accueillis par le réseau d’action [...]<img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=armerdesarmer.wordpress.com&blog=12798208&post=993&subd=armerdesarmer&ref=&feed=1" width="1" height="1" />]]></description>
    <wfw:commentRss>http://armerdesarmer.wordpress.com/2012/06/05/aser-pour-un-traite-sur-le-commerce-des-armes-qui-protege-les-droits-de-lhomme-et-respecte-le-droit-international-humanitaire-2/feed/</wfw:commentRss>
    <slash:comments>0</slash:comments>
 
    <media:content url="" medium="image">
      <media:title type="html">veillee2</media:title>
    </media:content>

    <media:content url="http://armerdesarmer.files.wordpress.com/2012/06/bandeau1.jpg?w=300" medium="image">
      <media:title type="html">bandeau</media:title>
    </media:content>
  </item>

  </channel>
</rss>

Le code que j'utilise est le suivant :

<?php
$xml = simplexml_load_file("http://armerdesarmer.wordpress.com/feed/");

if (!$xml) exit;

echo "<b>Parcours de \$xml->article</b><br />\n";
foreach ($xml->item as $item) {
  echo $item->title;
  echo "t";
}
?>

Le script n'entre pas dans la boucle foreach puisqu'à l'écran je n'ai même pas le "t" qui devrait s'afficher à chaque parcours de la boucle. J'ai bien en revanche le texte "Parcours de..." qui s'affiche donc simplexml_load_file ne retourne pas false...

J'ai testé plusieurs codes dispos sur le web et je ne comprends pas pourquoi cela ne fonctionne pas avec mon fichier xml...

Merci à toute personne susceptible de m'aider, mon problème est assez urgent !

Hors ligne

#2 27-06-2012 13:41:00

yawn
Membre
Inscription : 27-06-2012
Messages : 2

Re : Utilisation de simpleXML

Pardon, je viens de remplacer mon foreach par


foreach ($xml->channel->item as $i) {
  echo $i->title."</br>";
}
 

et ça marche, par contre j'ai un problème avec l'encodage, comment faire pour que les caractères s'affichent correctement ?

Hors ligne

Pied de page des forums