Pourriez-vous m'aider à valider ce flux RSS ?


Meeuuuhhh
WRInaute passionné
WRInaute passionné
 
Messages: 2046
Inscription: 8 Jan 2007

Pourriez-vous m'aider à valider ce flux RSS ?

Message le Jeu Mai 01, 2008 16:11

Bonjour,

J'essaie de créer un flux rss, en fait il s'affiche bien avec magpie, mais le validateur m'indique qu'il est invalide.

Y'a aussi un truc bizarre : j'affiche dix articles, ils sont présents dans le code source, mais sur la page flux_rss.php, seuls 5 s'affichent.

Voici mon code, si vous voulez y jeter un oeil, merci :
Code: Tout sélectionner
<?php
header('Content-Type: text/html"; charset=iso-8859-1');
require_once('./script/connex.php');
echo'
<rss version="2.0">
';

//si c'est la liste des dernières définitions qui est demandée
if(isset($_GET['article']) AND $_GET['article']==0)
{
echo '<channel>';
echo '<title>Derniers articles</title>';
echo'<link>http://www.monsite.com</link>';
echo '<description><![CDATA[Nouveaux Articles]]></description>';
$req="SELECT id,titre,contenu FROM articles ORDER BY id DESC LIMIT 0,10 ";
$res=mysql_query("$req");
while($R=mysql_fetch_array($res))

$art=stripslashes($R['contenu']);
  // Le nombre le lettres avant les ...
$maxL =150;
if (strlen($art) >= $maxL)
{$art= substr($art,0,$maxL) . "..." ; };   
$art= strip_tags($art);   
   $titre=stripslashes($R['titre']);
   $id=$R['id'];
   echo '
   <item>
   <link>http://www.monsite.com/'.$R['id'].'.htm</link>

   <title>'.$titre.'</title>   
   
   <description>'.$art.'</description>

   </item>';   
;}//ferme whille
// édition de la fin du fichier XML
echo'</channel>';
;}

echo '</rss>';
?>


Il y a un autre truc bizarre, quand j'ajoute cette ligne dans les <item>, ça n'affiche plus rien sur la page :
Code: Tout sélectionner
<guid isPermaLink="true">http://www.monsite.com/'.$R['id'].'.htm</guid>



Ca c'est la liste d'erreur que me renvoie le validateur RSS du W3C :

Code: Tout sélectionner
This feed does not validate.

    *

      line 53, column 50: Undefined named entity: eacute (4 occurrences) [help]

             <description>Partie d'une population . Un &eacute;chantillon ...
                                                            ^

In addition, interoperability with the widest range of feed readers could be improved by implementing the following recommendations.

    *

      Feeds should not be served with the "text/html"" media type [help]


    *

      line 12, column 1: item should contain a guid element (10 occurrences) [help]

             </item>
           ^

    *

      line 90, column 8: Missing atom:link with rel="self" [help]

             </item></channel></rss>



Merci d'avance pour votre aide.

DadouDuck
WRInaute impliqué
WRInaute impliqué
 
Messages: 910
Inscription: 28 Mai 2007

Message le Jeu Mai 01, 2008 16:47

Pour te prouver que je suis pas rancunier, je vais essayer de t'aider :wink:

En plus du code, il aurait été utile de fournir un lien vers le rss généré, j'ai l'impression que cela provient de caractères invalides provenant de tes données en provenance de ta base, peut être un mauvais encodage.


spout
WRInaute accro
WRInaute accro
 
Messages: 4382
Inscription: 14 Mai 2003

Message le Jeu Mai 01, 2008 17:14

Déjà régler ce problème:
Code: Tout sélectionner
Feeds should not be served with the "text/html"" media type


Meeuuuhhh
WRInaute passionné
WRInaute passionné
 
Messages: 2046
Inscription: 8 Jan 2007

Message le Jeu Mai 01, 2008 17:20

Oui mais si je l'enlève, plus rien ne s'affiche du tout.


spout
WRInaute accro
WRInaute accro
 
Messages: 4382
Inscription: 14 Mai 2003

Message le Jeu Mai 01, 2008 18:13

Ce serait pas car il manque un <![CDATA[ à <description>'.$art.'</description> ?


Meeuuuhhh
WRInaute passionné
WRInaute passionné
 
Messages: 2046
Inscription: 8 Jan 2007

Message le Jeu Mai 01, 2008 18:31

Oui, alors j'ai essayé ça :

Code: Tout sélectionner
<description><![CDATA['.$art.']]</description>



Et là plus aucun item ne s'affiche, page blanche, à l'exception du titre et de la description de celle-ci.

DadouDuck
WRInaute impliqué
WRInaute impliqué
 
Messages: 910
Inscription: 28 Mai 2007

Message le Jeu Mai 01, 2008 18:43

Bon je répète ma demande : peut tu nous donner un lien vers le xml généré, ce sera plus facile de voir ou peut se trouver l'erreur !


Meeuuuhhh
WRInaute passionné
WRInaute passionné
 
Messages: 2046
Inscription: 8 Jan 2007

Message le Jeu Mai 01, 2008 19:06

Bah non je peux pas, sinon je l'aurais fait lol

Ce serait plus pratique pour moi aussi, je me taperais pas des copier-collés.

darkjukka
WRInaute impliqué
WRInaute impliqué
 
Messages: 669
Inscription: 28 Avr 2007

Message le Jeu Mai 01, 2008 19:08

Oui voir le fichier aiderai.

Le type mime doit être : application/rss+xml et pas text/html, c'est un poil logique ça.

DadouDuck
WRInaute impliqué
WRInaute impliqué
 
Messages: 910
Inscription: 28 Mai 2007

Message le Jeu Mai 01, 2008 19:09

pourquoi, pas publier ou problème de contenu non compatible avec la charte de wri? dans le deuxième cas envoie le par mp


Meeuuuhhh
WRInaute passionné
WRInaute passionné
 
Messages: 2046
Inscription: 8 Jan 2007

Message le Jeu Mai 01, 2008 19:20

C'est pas ça, c'est que j'ai plein de bouts de code qui trainent sur le site, je veux pas donner en plus son url, c'est tout. Mais je te remercie pour ton aide.

DadouDuck
WRInaute impliqué
WRInaute impliqué
 
Messages: 910
Inscription: 28 Mai 2007

Message le Jeu Mai 01, 2008 19:24

ok, et faire un copier/coller du code généré?


Meeuuuhhh
WRInaute passionné
WRInaute passionné
 
Messages: 2046
Inscription: 8 Jan 2007

Message le Jeu Mai 01, 2008 19:49

Houla, ça m'avait échappé, merci :oops:

Code: Tout sélectionner
<rss version="2.0">
<channel>
<title>Derniers articles</title>
<link>http://www.monsite.com</link>
<description><![CDATA[Nouveaux articles proposés sur mon site]]></description>
   
<item>
   <link>http://www.monsite.com/article1.htm</link>
    <guid isPermaLink="true">http://www.monsite.com/article1.htm</guid>
   <title>titre de l'article </title>   
   <description><![CDATA[150 caractères du premier article...]]</description>
        </item>
   
        <item>
   <link>http://www.monsite.com/article2.htm</link>
   <guid isPermaLink="true">http://www.monsite.com/article2.htm</guid>
   <title>titre de l'article</title>   
   <description><![CDATA[150 premiers caractères de l'article...]]</description>
         </item>
   
</channel>
</rss>


Voilà donc ici j'en ai affiché 2, mais y'en a bien 10 dans le code et comme j'ai dit plus haut, dans certains cas où ça daigne s'afficher, ça n'en affiche de toute façon que 5 (et 10 si j'enlève la balise description).

DadouDuck
WRInaute impliqué
WRInaute impliqué
 
Messages: 910
Inscription: 28 Mai 2007

Message le Jeu Mai 01, 2008 20:28

tu as probablement un caractère parasite dans la description du 5 ou 6 ième qui bloque


spout
WRInaute accro
WRInaute accro
 
Messages: 4382
Inscription: 14 Mai 2003

Message le Jeu Mai 01, 2008 20:29

C'est franchement difficile de t'aider sans l'adresse du flux.

Peut-être que tu devrais regarder du côté de cette classe:
http://www.bitfolge.de/rsscreator-en.html

Pourriez-vous m'aider à valider ce flux RSS ?

Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :

Consultez la description détaillée des produits ou services de Google suivants : Google Feed Fetcher, FeedBurner, Google Reader, Google ReadAir

  • Echanger des liens
    Cet outil vous liste quelques sites qui font des liens vers des sites similaires au vôtre, pour vous aider à trouver des partenaires pour des échanges de liens.


Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 12 invités