Création d'un flux RSS (problème d'affichage)
21 messages
• Page 1 sur 2 • 1, 2
- Chewy
- Nouveau WRInaute

- Messages: 7
- Inscription: 22 Fév 2010
Création d'un flux RSS (problème d'affichage)
Bonjour à tous,
Je viens vers vous car j'ai besoin d'aide après avoir bien galéré.
Je souhaite créer un flux RSS pour mon site afin de permettre aux visiteurs de pouvoir suivre les actualités qui sont mises en ligne chaque jour.
Je me suis inspiré de la méthode "Création et lecture de flux RSS 2.0 en PHP" (http://ghostdogpr.developpez.com/articles/rss/) , et je me retrouve bloqué. Etant assez novice dans tout ce qui est PHP, XML... je dois dire que je galère complet.
Quelques explications sur le fonctionnement de mon site : pour ajouter des news sur mon site, j'ai une base de données MySQL via phpMyAdmin avec un back office pour me permettre d'ajouter une actu (titre, image, contenu...) le plus simplement possible. Pour la version de PHP, il s'agit de la version 4. Et donc je souhaiterais que dès que j'ajoute une actu sur le site, cet ajout se fasse également dans le fichier XML.
Actuellement, seule les dates s'affichent dans le fichier XML. Vous pouvez le voir à cette adresse : http://www.cryptoseries.fr/rss/actus.xml.
Le problème viendrait peut-être de cette partie de code quand j'essaye d'appeler les champs de la base où seule la date est vraiment appelée ou créée.
$xml .= '<item>';
$xml .= '<title>'.$tab["titre"].'</title>';
$xml .= '<link>http://www.cryptoseries.fr/</link>';
$xml .= '<pubDate>'.$date.' GMT</pubDate>';
$xml .= '<description>'.$tab["content"].'</description>';
$xml .= '</item>';
Quand je laisse comme ça, ça donne ce qui est affiché avec seulement les dates dans le fichier xml. Dès que je change cet appel en remplaçant "titre" par "Title" et "content" par "Contenu" (qui sont pourtant les noms des champs dans ma base), il n'y a plus aucun affichage. Bizarre tout ça. Du coup je suis vraiment perdu...
J'espère que certains d'entre vous pourront m'éclairer. Je reste bien entendu à votre disposition pour en discuter, vous apporter plus d'éléments, etc. Bref n'hésitez pas et surtout merci d'avance pour vos contributions.
@+
Chewy
Je viens vers vous car j'ai besoin d'aide après avoir bien galéré.
Je souhaite créer un flux RSS pour mon site afin de permettre aux visiteurs de pouvoir suivre les actualités qui sont mises en ligne chaque jour.
Je me suis inspiré de la méthode "Création et lecture de flux RSS 2.0 en PHP" (http://ghostdogpr.developpez.com/articles/rss/) , et je me retrouve bloqué. Etant assez novice dans tout ce qui est PHP, XML... je dois dire que je galère complet.
Quelques explications sur le fonctionnement de mon site : pour ajouter des news sur mon site, j'ai une base de données MySQL via phpMyAdmin avec un back office pour me permettre d'ajouter une actu (titre, image, contenu...) le plus simplement possible. Pour la version de PHP, il s'agit de la version 4. Et donc je souhaiterais que dès que j'ajoute une actu sur le site, cet ajout se fasse également dans le fichier XML.
Actuellement, seule les dates s'affichent dans le fichier XML. Vous pouvez le voir à cette adresse : http://www.cryptoseries.fr/rss/actus.xml.
Le problème viendrait peut-être de cette partie de code quand j'essaye d'appeler les champs de la base où seule la date est vraiment appelée ou créée.
$xml .= '<item>';
$xml .= '<title>'.$tab["titre"].'</title>';
$xml .= '<link>http://www.cryptoseries.fr/</link>';
$xml .= '<pubDate>'.$date.' GMT</pubDate>';
$xml .= '<description>'.$tab["content"].'</description>';
$xml .= '</item>';
Quand je laisse comme ça, ça donne ce qui est affiché avec seulement les dates dans le fichier xml. Dès que je change cet appel en remplaçant "titre" par "Title" et "content" par "Contenu" (qui sont pourtant les noms des champs dans ma base), il n'y a plus aucun affichage. Bizarre tout ça. Du coup je suis vraiment perdu...
J'espère que certains d'entre vous pourront m'éclairer. Je reste bien entendu à votre disposition pour en discuter, vous apporter plus d'éléments, etc. Bref n'hésitez pas et surtout merci d'avance pour vos contributions.
@+
Chewy
-

nza2k - WRInaute impliqué

- Messages: 771
- Inscription: 16 Jan 2004
Re: Création d'un flux RSS (problème d'affichage)
Hello,
Je ne sais pas si ton site est récent ou pas, si tu as bcp de contenu... Mais as-tu réfléchi à installer un CMS gratuit pour gérer ton contenu et obtenir différentes fonctionnalités clé en main. Je pense par exemple à Wordpress : gratuit et open source
Sinon, t'as essayé avec ça autour de tes champs textes :
<![CDATA[ ]]>
Et ta variable $date, elle sort d'où ? Pourquoi n'est-elle pas dans un tableau comme content et title ? N'aurais-tu pas fait un extract() auparavant ?
Je ne sais pas si ton site est récent ou pas, si tu as bcp de contenu... Mais as-tu réfléchi à installer un CMS gratuit pour gérer ton contenu et obtenir différentes fonctionnalités clé en main. Je pense par exemple à Wordpress : gratuit et open source
Sinon, t'as essayé avec ça autour de tes champs textes :
<![CDATA[ ]]>
Et ta variable $date, elle sort d'où ? Pourquoi n'est-elle pas dans un tableau comme content et title ? N'aurais-tu pas fait un extract() auparavant ?
- Chewy
- Nouveau WRInaute

- Messages: 7
- Inscription: 22 Fév 2010
Re: Création d'un flux RSS (problème d'affichage)
Bonjour,
Mon site a presque 4 ans et il y a pas mal de contenu. L'idée du CMS, j'y ai pensé mais j'aime l'idée de devoir tout faire à la main même si je galère pas mal
Je vais faire le test et je vous tiendrai au courant.
Donc voici la partie de mon code avec $tab (tout ce qui concerne xml en fait) en espérant que ça pourra vous aider. Sachant que ce code est placé dans le fichier qui envoit des données (actualités) vers la BDD.
Vous remerciant par avance pour votre aide.
Mon site a presque 4 ans et il y a pas mal de contenu. L'idée du CMS, j'y ai pensé mais j'aime l'idée de devoir tout faire à la main même si je galère pas mal
nza2k a écrit:<![CDATA[ ]]>
Je vais faire le test et je vous tiendrai au courant.
nza2k a écrit:Et ta variable $date, elle sort d'où ? Pourquoi n'est-elle pas dans un tableau comme content et title ? N'aurais-tu pas fait un extract() auparavant ?
Emorej a écrit:Il faudrait que tu nous montres la partie de ton code qui remplit $tab. Manifestement $tab est vide quand tu affectes une valeur à $xml.
Donc voici la partie de mon code avec $tab (tout ce qui concerne xml en fait) en espérant que ça pourra vous aider. Sachant que ce code est placé dans le fichier qui envoit des données (actualités) vers la BDD.
- Code: Tout sélectionner
$xml = '<?xml version="1.0" encoding="iso-8859-1"?><rss version="2.0">';
$xml .= '<channel>';
$xml .= '<title>Les actualités séries de la Crypte aux séries</title>';
$xml .= '<link>http://www.cryptoseries.fr</link>';
$xml .= '<description>Retrouvez toutes les actualités de vos séries anciennes et récentes sur le flux de la Crypte aux séries</description>';
$res=mysql_query("SELECT * FROM news ORDER BY id DESC LIMIT 10") or die("Erreur SQL : ".mysql_error());
// extraction des informations et ajout au contenu
while($tab=mysql_fetch_array($res)){
$date=date("D, d M Y H:i:s", strtotime($tab["date"]));
$xml .= '<item>';
$xml .= '<title>'.$tab["titre"].'</title>';
$xml .= '<link>http://www.cryptoseries.fr/</link>';
$xml .= '<pubDate>'.$date.' GMT</pubDate>';
$xml .= '<description>'.$tab["content"].'</description>';
$xml .= '</item>';
}
$xml .= '</channel>';
$xml .= '</rss>';
$fp = fopen("../../rss/actus.xml", 'w+');
fputs($fp, $xml);
fclose($fp);
mysql_close();
Vous remerciant par avance pour votre aide.
- Emorej
- WRInaute discret

- Messages: 83
- Inscription: 25 Oct 2007
Re: Création d'un flux RSS (problème d'affichage)
Et si tu ajoutes un
- Code: Tout sélectionner
var_dump($tab);
-

tryan - WRInaute passionné

- Messages: 2355
- Inscription: 20 Fév 2005
Re: Création d'un flux RSS (problème d'affichage)
Salut,
Pour moi, soit ta requête est erroné, (ce qui m'étonnerai puisque ta variable $tab["date"] fonctionne), soit une ou des variables en sortit provoque un bug. Essaye d'appliquer un <![CDATA[*****]]> sur les titres et descriptions.
Par ailleurs ta ligne $xml .= '<link>http://www.cryptoseries.fr/</link>'; n'est pas correcte ... elle est censé indiquer l'url des pages concernées et non l'index de ton site.
Pour moi, soit ta requête est erroné, (ce qui m'étonnerai puisque ta variable $tab["date"] fonctionne), soit une ou des variables en sortit provoque un bug. Essaye d'appliquer un <![CDATA[*****]]> sur les titres et descriptions.
- Code: Tout sélectionner
$xml .= '<title><![CDATA['.$tab["titre"].']]></title>';
$xml .= '<description><![CDATA['.$tab["content"].']]></description>';
Par ailleurs ta ligne $xml .= '<link>http://www.cryptoseries.fr/</link>'; n'est pas correcte ... elle est censé indiquer l'url des pages concernées et non l'index de ton site.
- Chewy
- Nouveau WRInaute

- Messages: 7
- Inscription: 22 Fév 2010
Re: Création d'un flux RSS (problème d'affichage)
Emorej a écrit:Et si tu ajoutes unjuste au début de ta boucle while, qu'est ce qu'il affiche ?
- Code: Tout sélectionner
var_dump($tab);
Alors ça m'affiche les infos mais dans la page du code php et xml, c'est à dire la page de gestion qui envoi les données à la BDD.
tryan a écrit:Salut,
Pour moi, soit ta requête est erroné, (ce qui m'étonnerai puisque ta variable $tab["date"] fonctionne), soit une ou des variables en sortit provoque un bug. Essaye d'appliquer un <![CDATA[*****]]> sur les titres et descriptions.
- Code: Tout sélectionner
$xml .= '<title><![CDATA['.$tab["titre"].']]></title>';
$xml .= '<description><![CDATA['.$tab["content"].']]></description>';
ça n'affiche rien, voici ce que ça me donne :
- Code: Tout sélectionner
<description>
- <![CDATA[
]]>
</description>
tryan a écrit:Par ailleurs ta ligne $xml .= '<link>http://www.cryptoseries.fr/</link>'; n'est pas correcte ... elle est censé indiquer l'url des pages concernées et non l'index de ton site.
Merci pour l'info, je vais essayer d'y remédier.
C'est vraiment galère tout ça, mais merci pours vos contributions.
- Chewy
- Nouveau WRInaute

- Messages: 7
- Inscription: 22 Fév 2010
Re: Création d'un flux RSS (problème d'affichage)
C'est le vide total.
je l'ai inséré comme ceci :
je l'ai inséré comme ceci :
- Code: Tout sélectionner
// extraction des informations et ajout au contenu
while($tab=mysql_fetch_array($res)){
echo $tab["titre"];
$date=date("D, d M Y H:i:s", strtotime($tab["date"]));
$xml .= '<item>';
$xml .= '<title>'.$tab["titre"].'</title>';
$xml .= '<link>http://www.cryptoseries.fr/</link>';
$xml .= '<pubDate>'.$date.' GMT</pubDate>';
$xml .= '<description>'.$tab["content"].'</description>';
$xml .= '</item>';
}
- silef
- WRInaute occasionnel

- Messages: 317
- Inscription: 13 Jan 2006
Re: Création d'un flux RSS (problème d'affichage)
A la place de
Fais
Ca te permettra déjà de voir les index qui sont récupérés lors de ta requête et de vérifier que cela ne vient pas de titre ou content.
- Code: Tout sélectionner
echo $tab["titre"];
Fais
- Code: Tout sélectionner
print_r($tab);
Ca te permettra déjà de voir les index qui sont récupérés lors de ta requête et de vérifier que cela ne vient pas de titre ou content.
-

anemone-clown - WRInaute passionné

- Messages: 1277
- Inscription: 11 Nov 2007
Re: Création d'un flux RSS (problème d'affichage)
silef a écrit:Fais
- Code: Tout sélectionner
print_r($tab);
Bien joué! Au moins, il y aura vérification que la requête SQL renvoie quelque chose... Quoiqu'à la base, il faudrait mieux tester $res pour savoir si c'est vide ou rempli.
- Chewy
- Nouveau WRInaute

- Messages: 7
- Inscription: 22 Fév 2010
Re: Création d'un flux RSS (problème d'affichage)
Etant au boulot je testerai tout ça ce soir.
En tout cas, merci pour votre réactivité, ça fait plaisir car je me sentais bien seul avec ce problème que je n'arrive pas à régler depuis déjà pas mal de temps.
Je vous tiens au courant dans la soirée.
En tout cas, merci pour votre réactivité, ça fait plaisir car je me sentais bien seul avec ce problème que je n'arrive pas à régler depuis déjà pas mal de temps.
Je vous tiens au courant dans la soirée.
-

anemone-clown - WRInaute passionné

- Messages: 1277
- Inscription: 11 Nov 2007
Re: Création d'un flux RSS (problème d'affichage)
silef a écrit:flux n'affiche que les dates
Ben oui, mais... on ne sait pas si c'est la bonne date et si elle varie à chaque occurence.
21 messages
• Page 1 sur 2 • 1, 2
Lectures recommandées sur ce thème :
- Création d'un flux RSS avec PHP, problème récurrent avec getElementById
- Affichage d'un flux RSS
- Affichage flux rss sous ie
- Affichage partiel flux rss
- [FB] affichage de flux RSS sur page FB ?
- Création flux RSS
- [ Resolu ] Création de flux RSS
- Création automatique de pages à partir de flux RSS
- Création de flux RSS - Fichier XML invalide
- intégrations adsenses flux rss et variable dans url flux rss ???
- Comment obtenir le flux RSS d'un compte Twitter
- Moteur de recherche de flux RSS / Atom
- Comment suivre un contact Google+ par flux RSS
- Utiliser Actifpub pour l'intégration d'un flux RSS externe sur son site
- Intégrer facilement un flux RSS externe
- Optimiser son référencement sur Wikio
- Un (RSS) pour tous (les blogs officiels de Google)
- Google lance la page d'accueil personnalisée sur téléphones mobiles
Consultez la description détaillée des produits ou services de Google suivants : Google Feed Fetcher, FeedBurner, Google Reader, Zingku, Google ReadAir
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité
