Bonjour,
Pour passer une base en encodage UTF-8, il ne suffit pas de déclarer les colonnes de type CHAR() ou VARCHAR() en utf8.
Il faut déclarer le stockage en utf8.
La communication serveur -> client et client -> serveur en utf8
L'entêtes des pages en utf8.
Les fichiers (sources PHP, (X)HTML, JS, sauvegardes de la base, ...) doivent être sauvegardés en utf8
La différence entre l'UTF-8 et le iso-8859-1 se situe principalement dans le nombre de caractères supportés, l'UTF-8 supporte (est capable d'encoder tous les caractères de) toutes les langues actuellement connues.
Dans quels cas utiliser UTF-8 ?
Si l'application doit supporter des caractères autres que les caractères ANSI.
Si une internationalisation de l'application est prévue.
Si l'on utilise un système Linux/Unix qui encode par défaut en UTF-8.
Pour une utilisation des langues ouest-européennes l'iso-8859-1 peut très bien convenir mais en prennent soin si manipulation de fichiers entre systèmes hétérogènes exp. Linux->Windows, ...
Pour une utilisation WEB, Si vous ne voulez pas vous soucier de l'encodage des caractères utilisez les entités (X)HTML pour les caractères spéciaux exp. le é codez-le en é car les caractères ANSI correspondent aux mêmes codes que leurs homologues UTF-8.
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.
A. Einstein