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

1 minute de lecture art

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 l’un des cas suivant :

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 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 est susceptible de mettre en ordre votre document html :

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

Commentaires

art

Oui, je remet un peu les mains dans le cambouis. C’est un problème récurent quand on attaque un projet, personnellement j’essaye de toujours bosser en UTF-8, et quand j’ai un problème, j’encode systématiquement la chaîne.

Et c’est certain que ça peut toujours servir :)

Laisser un commentaire

Votre adresse email ne sera pas visible. Les champs obligatoires sont marqués *

Chargement...
Reçevoir les prochains commentaires de cet article.