Bonjour,

Comment faire pour obtenir un seul flux RSS a partir de plusieurs flux RSS differents sans passer par un site externe du type http://feedmingle.com ?

Est-ce que je peux par exemple ecrire:

<?php
$url = 'http://www.lemonde.fr/rss/sequence/0,2-3234,1-0,0.xml'; 
$url = 'http://www.lemonde.fr/rss/fil/0,57-0,64-1100142,0.xml'; 
$url = 'http://rss.feedsportal.com/c/499/f/413863/index.rss'; 
$url = 'http://rss.feedsportal.com/c/499/f/413839/index.rss'; 
$url = 'http://www.capital.fr/rss2/feed/fil-bourse.xml'; 
$url = 'http://www.lefigaro.fr/rss/figaro_tauxetdevises.xml';

$dom = new DOMDocument();
$dom->load($url);

$i = 1;
foreach($dom->getElementsByTagName('item') as $item) {
	if($i <= 4) {
		echo "\t\t\t".'<div class="section" id="article'.$i.'">'."\n";
		echo "\t\t\t\t".'<h4>'.trim($item->getElementsByTagName('title')->item(0)->nodeValue).'</h4>'."\n";
		echo "\t\t\t\t".trim($item->getElementsByTagName('description')->item(0)->nodeValue)."\n";
		echo "\t\t\t".'</div>'."\n\n";
		$i++;
	}
}
?>


Merci pour votre aide.
Modifié par louis1984 (12 Feb 2010 - 19:19)
Re-salut,

$urls = array( 
    'http://www.lemonde.fr/rss/sequence/0,2-3234,1-0,0.xml', 
    'http://www.lemonde.fr/rss/fil/0,57-0,64-1100142,0.xml', 
    'http://rss.feedsportal.com/c/499/f/413863/index.rss', 
    'http://rss.feedsportal.com/c/499/f/413839/index.rss', 
    'http://www.capital.fr/rss2/feed/fil-bourse.xml', 
    'http://www.lefigaro.fr/rss/figaro_tauxetdevises.xml' 
); 

$nb_titres_par_url = 4;
 
$dom = new DOMDocument(); 

$i = 0; 
 
foreach($urls as $url) { 
    $dom->load($url); 
    foreach($dom->getElementsByTagName('item') as $item) { 
		$i++; 
        echo "\t\t\t".'<div class="section" id="article'.$i.'">'."\n"; 
        echo "\t\t\t\t".'<h4>'.trim($item->getElementsByTagName('title')->item(0)->nodeValue).'</h4>'."\n"; 
        echo "\t\t\t\t".trim($item->getElementsByTagName('description')->item(0)->nodeValue)."\n"; 
        echo "\t\t\t".'</div>'."\n\n"; 
        if(($i%$nb_titres_par_url) == 0) { 
            break; 
        } 
    } 
}

Modifié par Heyoan (10 Feb 2010 - 20:04)
De rien.

Ça pourrait être une bonne idée d'apprendre les bases de php (il existe de nombreux tutos sur le Web).

Si tu considères que ce sujet est [Résolu] merci de l'indiquer en éditant ton premier post et en modifiant le titre. Smiley cligne
Hello,

Une derniere question, comment je peux faire pour que le code m'affiche les 4 derniers messages de l'ensemble des flux (et pas les 4 derniers codes de chacun des flux)?
Le code affiche pour le moment les 4 derniers articles de chaque flux RSS dans la liste des flux.

'http://www.lemonde.fr/rss/sequence/0,2-3234,1-0,0.xml',
'http://www.lemonde.fr/rss/fil/0,57-0,64-1100142,0.xml',
'http://rss.feedsportal.com/c/499/f/413863/index.rss',
'http://rss.feedsportal.com/c/499/f/413839/index.rss',
'http://www.capital.fr/rss2/feed/fil-bourse.xml',
'http://www.lefigaro.fr/rss/figaro_tauxetdevises.xml' 


J'aimerais que le code affiche les 4 derniers articles de l'ensemble des flux RSS de la liste. En gros j'aimerais afficher les 4 derniers articles les plus recents qui sont publies sur les differents sites internet via le slider glider.js

Mais je ne sais pas comment je dois modifier le code..
Ben à priori il faut récupérer le noeud pubDate, le transformer en date permettant un tri. Pour te donner un exemple :
$date = 'Thu, 11 Feb 2010 17:15:06 GMT';
echo date('YmdHis', strtotime($date));
alimenter 1 ou des array(s), trier et ne prendre que les 4 plus récents.

Si je ne te donne pas le code tout fait c'est que j'ai l'impression que tu ne fais que du copier/coller et que tu n'apprends rien ! Smiley langue

De plus cela va à l'encontre de la règle 16 du forum.
Le probleme est que je suis debutant et que je ne comprends rien a l'histoire du noeud, que je ne sais pas alimenter un tableau et faire un tri...

Je suis pret a apprendre donc si tu connais un bon tutorial qui explique precisement comment je peux faire, n'hesites pas a me donner le lien!

Merci.
Je trouve pas la solution sur google. J'ai l'impression que ce que je veux faire est totalement hors de ma portee..

J'ai pas le encore le niveau pour faire ca alors est-ce que quelqu'un pourrait m'aider a modifier le code?

Smiley eek