Générer un flux RSS avec PHP

Résolu/Fermé
crocoscore Messages postés 165 Date d'inscription dimanche 16 novembre 2008 Statut Membre Dernière intervention 3 février 2015 - 24 juin 2011 à 16:24
mpmp93 Messages postés 6652 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 - 1 août 2011 à 17:39
Bonjour,
Après mainte recherches, je n'ai toujours pas de réponse. Je souhaite créer un flux avec le contenu d'une table (MySQL) constuie avec 4 colonnes: ID (int), titre (varshare), texte (text) et timestamp (bigint). J'ai appris à faire des Syndication de contenu « RSS » (notamment avec Atom et RSS 2.1), mais je ne trouve pas comment automatiser le système. J'imagine que la meilleurs solution est le PHP, sauf que l'extension des fichier « RSS » est .xml...

Merci d'avance !
A voir également:

2 réponses

boly38 Messages postés 267 Date d'inscription mercredi 23 février 2011 Statut Membre Dernière intervention 29 septembre 2016 80
Modifié par boly38 le 24/06/2011 à 16:58
Bonjour,

- soit vous pouvez générer vous-même vote XML conforme aux spec. RSS2.

- soit vous utilisez une libraire PHP permettant cela : chercher "php rss generator" ou bien "php rss writer", je suis tombé par exemple (non testé) sur PHP RSS2Writer ..

Mais pour bien comprendre, je pense que la première option est la plus simple au départ..

Perso je partirai du plus simple : un fichier "index.php" (plus de problème d'extension .php|.xml) en mettant un exemple simple de RSS (cf. Exemple_simple sur wikipédia) puis en substituant petit à petit les informations par des informations générée via le PHP...

Après placer en début une requête à la bdd pour obtenir N articles sous forme de tableau. Et remplacer ensuite l'"item" de l'exemple par un "foreach" capable de générer les items correspondant au tableau... (vite fait)çà donnerai quelque chose du genre :

foreach($mesitems as $item) {
$itemTitle = $item["titre"];
$itemDesc = $item["texte"];
print " <item>";
print " <title>$itemTitle</title>";
print " <description>$itemDesc</description>";
print " <pubDate>Sat, 07 Sep 2002 00:00:01 GMT</pubDate>";
print " <link>http://www.example.org/actu1</link>";
print " </item>";
}

Sinon voir aussi ce tutoriel avec la librairie RSSFeed..
0
crocoscore Messages postés 165 Date d'inscription dimanche 16 novembre 2008 Statut Membre Dernière intervention 3 février 2015 5
24 juin 2011 à 17:39
Merci, je vais tester tout ça ! Je repasse quand j'ai fini ;) !
0
mpmp93 Messages postés 6652 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
1 août 2011 à 17:39
Bonjour,

Dans Zend Framework:
http://framework.zend.com/manual/fr/zend.feed.introduction.html

A+
0