Aller au contenu

Sujets conseillés

Posté

Hello,

Sur mon site internet pour les enseignants, instituteurs et professeurs, je propose deux flux rss, l'un pour mon forum, l'autre pour les nouvelles ressources pédagogiques envoyées par les utilisateurs.

Cependant, il y a un petit problème. Lorsque j'essaie de valider mon flux rss, via le feed validator par exemple,

j'ai cette erreur qui revient constamment : element type br must be declared

Quelqu'un pourrait vérifier ?

(P.S. : Si quelqu'un sait comment avoir une notification sonore avec rssowl lors d'une nouvelle dépêche, je suis plus que preneur (ou tout type de notification sonore avec un autre agrégateur).

Posté

Si ton fil est créer par PHP utilise htmlspecialchars(), sinon les balises comprises dans ton texte seront interprétées comme du XML.

Il me semble...

  • 2 months later...
Posté

En fait tu ne peux pas inclure du code HTML comme ça dans un fichier RSS. Même si c'est du RSS 2.0 (qui n'est pas la version la plus "propre"), il faut te rendre compte que ce n'est pas du HTML ;)

Solution : enfermer ton contenu dans une balise CDATA afin que le code ne soit pas interprété par le parseur, ou alors encoder en entités.

En RSS 2.0 il me semble qu'il y a un truc inutilement compliqué à faire mais je ne sais plus exactement lequel :unsure:

Pour inclure le contenu dans une zone CDATA, il faut l'enfermer entre <![CDATA[ et ]]> Pour encoder il faut utiliser la fonction php htmlspecialchars() comme l'a dit lupucide ;)

Ensuite il faut je crois renseigner la technique utilisée (c'est là que c'est inutilement compliqué) dans le <description>. Ou alors je confond avec une autre version de RSS :unsure:

Posté

j'avais eu le meme probleme il ya quelques temps,

et voici comment je m'en suis sorti :

      $montexte = nl2br(strip_tags($montexte,"<a>,<i>"));
     $montexte = html_entity_decode($montexte);

     $montexte = "<![CDATA[".$montexte."]]>";

en entrée, $montexte est du HTML, j'enleve tout les tags html sauf lien et italique, je mets des <br> a la place des retour chariots, je gère les entites html et j'encadre le tout par le CDATA qui va bien...

oui oui, xml c'est simple il n'y a que des données :rolleyes:

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...