Configurer UTF-8 de bout en bout

Editeur

Les fichiers doivent être encodés en utf-8.

HTML

Pour le code HTML il suffit de spécifier l’encodage à l’aide de cette balise :

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

Apache

httpd.conf /.htaccess :

AddDefaultCharset UTF-8

MySQL

  • utf8_bin (sensible à la casse)
  • utf8_general_ci

PHP

Attendre PHP 6 ;=)

Troubleshooting

  • Si la page affiche des caractères de ce type : « Ã© », « Ã® », « Ã », …
    => Les données ont été enregistrées au format UTF-8, et le navigateur les affiche en pensant avoir affaire à de l’ISO.
  • Si la page affiche des caractères de ce type : « � »
    => Les données ont été enregistrées au format ISO, et le navigateur les affiche en pensant avoir affaire à de l’UTF-8.
  • Si les données sont codées en dur dans la page, voir l’encodage de l’éditeur de texte, l’header apache et la balise meta « charset ». Si les données proviennent de la base, vérifier le format de stockage et les méthodes de lecture et d’insertion (SET NAMES et charset). Si les données proviennent de l’extérieur (web services, rss, …), penser à convertir les chaînes de caractère (utf8_encode-decode et fonctions du module iconv).

En savoir plus

Autres articles susceptibles de vous intéresser :

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *

*

Vous pouvez utiliser ces balises et attributs HTML : <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Recent Tweets

Catégories