Comprendre son problème d’affichage UTF-8 / ISO-8859-1

La différence entre l'UTF-8 et l'ISO-8859-1 est simple. Le premier permet d'utiliser une ribambelle de caractères lorsque l'autre se limite à 256 caractères. L'UTF-8 permet notamment d'écrire un document en plusieurs langues, ce qui n'est pas négligeable.

De manière générale, je vous conseille d'utiliser l'UTF-8. Pour cela, votre logiciel d'édition permet de choisir le type d'encodage de votre document, c'est une première opération à effectuer. Sur le même site, il vaut mieux que l'ensemble de vos documents et bases de données soient encodées avec la même norme, sinon vous allez être dans ces cas la :

La page affiche des caractères comme ceci à la place des accents : "é", "î", ...

Les données sont en UTF-8, et le navigateur affiche de l'ISO-8859-1. Il faut donc inviter votre navigateur à prendre en compte le format adéquat dans votre page. Pour le html, il faut insérer cette balise <meta /> dans votre <head /> :

<meta http-equiv="Content-type" content="text/html; charset=UTF-8"/>

La page affiche des caractères dans ce genre : "�"

Les données ont été enregistrées au format ISO-8859-1 (aussi appelé Latin-1 ou ISO/CEI 8859-1), et le navigateur les affiche en pensant avoir affaire à de l'UTF-8, du coup ça fout carrément le bordel, et c'est normal. Cette balise <meta /> est susceptible de mettre en ordre votre document html :

<meta http-equiv="content-Type" content="text/html; charset=iso-8859-1" />

Vous avez une remarque à nous faire partager, vous avez trouvé une faute d’orthographe, une autre erreur dans le billet, ou vous avez juste kiffé votre race ? Faites-le savoir dans les commentaires de cet article ou en nous écrivant à l’adresse « a AT irz.fr ». Ou via le formulaire de contact.

Catégorie(s) : Divers, Tutoriel, Tagué dans , , ,

Dernière mise à jour le 4 février 2015