nizouille Posté 25 Mars 2005 Posté 25 Mars 2005 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).
lupucide Posté 25 Mars 2005 Posté 25 Mars 2005 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...
nizouille Posté 25 Mars 2005 Auteur Posté 25 Mars 2005 et pour la notification de nouvelles dépêches ?
nizouille Posté 14 Juin 2005 Auteur Posté 14 Juin 2005 Hello, Si je passe mon rss sur l'enseignement au validateur, j'ai cette horrible erreur http://feedvalidator.org/check.cgi?url=htt...ns.be%2Frss.php Le br n'est pas content d'être là. J'ai cru comprendre que je devais utiliser cdata ... mais je n'y arrive pas $xml .='<description>'; $xml .= $news; $xml .='</description></item>'; Merci de votre aide.
Xavier Posté 14 Juin 2005 Posté 14 Juin 2005 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 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
Vincent Posté 14 Juin 2005 Posté 14 Juin 2005 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
Sujets conseillés
Veuillez vous connecter pour commenter
Vous pourrez laisser un commentaire après vous êtes connecté.
Connectez-vous maintenant