Version complète: sur le forum Webmaster Hub : PB avec mes liens dans un Flux RSS 2.0
Webmaster Hub > Création et exploitation de Sites Internet > Les langages du Net > XML et ses dialectes
gobi
Salut à tous !
Je viens poster sur ce forum car j'y ai déjà découvert plein d'infos croustillantes sur les RSS mais là je sèche un peu...

J'utilise FeedValidator pour arriver à un resultat propre : http://www.33mag.com/rsstest_debug.php

Mes actus renvoient souvent a des articles internes de notre site :
donc je fait mon lien de la sorte : $ext_link = 'http://www.33mag.com/news_details.php?id='.$id;
et dans ce cas cela fonctionne très bien !

Mais certaines actus ont un lien spécifique, parfois externe a notre site (url stocké dans ma Bdd) et c'est cela qui semble poser parfois probleme :

CODE
This feed does not validate.

    * line 59, column 54: XML parsing error: <unknown>:59:54: not well-formed (invalid token) [help]

    <link>http://www.33mag.com/webtv.php#channel=16&show=251</link>


J'ai remarqué que cela plantait surtout sur des liens avec beaucoup de variables dedans, plusieurs & et signes = dans l'url...

Qu'en pensez-vous ?

Merci d'avance !
Gobi
gobi
J'ai trouvé d'ou venait mon problème : les caractères spéciaux dans les url...

maintenant je nettoie mes liens avec :

CODE
$ext_link = stripslashes(trim($ext_link));
$ext_link = str_replace('"','&quot;',$ext_link);
$ext_link = str_replace("<BR>",'<BR/>',$ext_link);
$ext_link = str_replace("&",'&amp;',$ext_link);
$ext_link = str_replace("\x92","'",$ext_link);
$ext_link = str_replace("\x96","-",$ext_link);
$ext_link = str_replace("<","&lt;",$ext_link);
$ext_link = str_replace(">","&gt;",$ext_link);


et j'ai plus de problème ;-)

Peace!
Ceci est une version "bas débit" de notre forum. Pour voir la version complète avec plus d'information, la mise en page et les images, veuillez cliquer ici.