Traitement feed XML et caractères accentués
5 messages • Page 1 sur 1
Consultez la formation au référencement naturel Google de WebRankInfo / Ranking Metrics
Traitement feed XML et caractères accentués
Bonjour,
j'utilise le script suivant pour afficher les derniers posts issus d'un feed:
Seul problème, les caractères accentués dans les titres ne s'affichent pas ou mal.
Savez-vous comment résoudre ce problème ?
Merci d'avance
j'utilise le script suivant pour afficher les derniers posts issus d'un feed:
- Code: Tout sélectionner
<?php
$fichier_xml = "http://actualites.prepa-hec.org/feed/";
$nombre_limite = 7;
$raw="";$file = fopen($fichier_xml,"r");
if ($file) { while (!feof($file)) $raw .= fread($file,32000);
fclose( $file );
if(eregi("<item>(.*)</item>",$raw,$rawitems)){
$items = explode("<item>", $rawitems[0]);
$nb = count($items);
$maximum = (($nb-1) < $nombre_limite) ? ($nb-1) :
$nombre_limite; for ($i=0;$i<$maximum;$i++) {
eregi("<title>(.*)</title>",$items[$i+1], $title);
eregi("<link>(.*)</link>",$items[$i+1], $url);
echo "<li><a href=\"".$url[1]."\" target=\"_blank\">".$title[1]."</a></li>";
}
}
}?>
Seul problème, les caractères accentués dans les titres ne s'affichent pas ou mal.
Savez-vous comment résoudre ce problème ?
Merci d'avance
ok j'ai eu la même merdouille.
Les caractères d'un flux (ou d'une page) sont codés soit en utf8 soit en iso.
Si ton fichier php qui prend le feed est en iso et que le feed est en utf8 alors tous les caractères spéciaux sont daubés.
idem si php en utf8 et feed en iso
utf8_encode prend de l'iso et le met en utf8
utf8_encode prend de l'utf8 et le met en iso
Là tu as un pb de caractère spécial, soit ton php est en utf8 et ton feed en iso, dans ce cas tu fais un utf8_encode sur le contenu du feed, soit ton php est en iso et ton feed est en utf8 et là tu fais donc un utf8_decode
En gros tu fais l'un et l'autre et tu regardes lequel marche.
PS. c'est une horreur ce truc quand on connait pas!!
Les caractères d'un flux (ou d'une page) sont codés soit en utf8 soit en iso.
Si ton fichier php qui prend le feed est en iso et que le feed est en utf8 alors tous les caractères spéciaux sont daubés.
idem si php en utf8 et feed en iso
utf8_encode prend de l'iso et le met en utf8
utf8_encode prend de l'utf8 et le met en iso
Là tu as un pb de caractère spécial, soit ton php est en utf8 et ton feed en iso, dans ce cas tu fais un utf8_encode sur le contenu du feed, soit ton php est en iso et ton feed est en utf8 et là tu fais donc un utf8_decode
En gros tu fais l'un et l'autre et tu regardes lequel marche.
PS. c'est une horreur ce truc quand on connait pas!!
Re: Traitement feed XML et caractères accentués
Je déterre ce sujet pour remercier theJB car après avoir passer plus d'une heure à chercher sur le web, sa solution s'avère être la bonne pour le problème qui se posait à moi. En effet, j'ai voulu utiliser le tutoriel sur la création de flux RSS utilisant une classe php5 que j'ai trouvé sur un autre site. J'ai adapté le script à mon projet personnel mais je n'arrivais pas à afficher correctement les accents du titre et de la description du flux lui-même et voilà le bidouillage par lequel j'ai résolu mon problème!
RSSFeed est en iso-8859-15 car c'est comme cela que sont codées les données de ma bdd.
Donc un grand merci à theJB
- Code: Tout sélectionner
$titreutf8=utf8_decode("Flux RSS des actualités");
$descriptionutf8=utf8_decode('Les dernières actualités directement par flux RSS');
// Création des entêtes du flux RSS
$oRssFeed = new RSSFeed('iso-8859-15');
$oRssFeed->setProtectString(true);
$oRssFeed->setTitle($titreutf8);
$oRssFeed->setDescription($descriptionutf8);
RSSFeed est en iso-8859-15 car c'est comme cela que sont codées les données de ma bdd.
Donc un grand merci à theJB
5 messages • Page 1 sur 1
Formation recommandée sur ce thème :
Formation Référencement naturel Google : apprenez une méthode efficace pour optimiser à fond le référencement naturel dans Google de façon durable... Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Blog officiel de Yahoo Publisher Network (YPN)
- Moteur de recherche de flux RSS / Atom
- Google Enterprise a son blog
- Nouvelle version de Yahoo Site Explorer (août 2008)
- Ranking Metrics lance son blog
- Google Sitemap Generator version 1.3
- Le blog de Google Analytics
- Le blog officiel de Google Research
- Un (RSS) pour tous (les blogs officiels de Google)
- Robots.txt : Yahoo supporte les options avancées
Consultez la description détaillée des produits ou services de Google suivants : Google Feed Fetcher, API Google Checkout
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités




le forum