L’encodage utf-8 dans une chaine de flux digitale

L’encodage utf-8 dans une chaine de flux digitale

Avez-vous déjà reçu une lettre avec votre adresse comportant des losanges avec point d'interrogation � ? My name is St�ph, St�phane P�caut :) Et bien, il m'arrive souvent de recevoir des courriers avec mon adresse imprimée décorée de � à la place des é et autres symboles diacritiques !! Cela ne concerne donc pas que le web ! Les tickets de caisse de supermarché possède aussi ce joli bug à leur éventail de fonctionnalités !

Cachez moi ce � que je ne saurai voir ! 

Lorsque vous choisissez une typo sur le site de fonte dafont, vous oubliez souvent de vérifier si elle comporte les accents aigus si vous voulez écrire de jolis mots en français. En effet lorsque vous choisissez une police, lorsque vous tapez la phrase d’aperçu, par exemple “L’art de l’édition” si l’accent aigu “é” ne fait pas parti des caractères de la police, alors le site dafont affiche un rectangle, ou un symbole inattendu !

Lorsque vous visitez un site internet, recevez un email, ou recevez une lettre imprimée, concernant les caractères diacritiques (accents et autres éàèêâô…) peuvent être “cassés” ou “bogués”. En effet, la langue anglaise ( langue indo-européenne germanique) ne contient pas de caractères comme “e” accent aigu “é”, “a” accent grave “à” et les polices systèmes ont du intégrer ces derniers au court du temps, mais la solution choisie reste incertaine et des bugs peuvent se manifester. Pour faire court, si la plage de caractères ne contient pas ces accents, alors un symbole de remplacement et automatiquement choisi par le système, en général un point d’interrogation blanc inscrit dans un losange noir , ou un rectangle .


Bugs récurrents et comment les résoudre

Selon le système dans lequel on se trouve, une solution se présente. Dans le contexte langages Web, comme par exemple la lecture d’une page web générée par php/MySQL, ou un email provenant d’un client thunderbird français vers un client outlook anglais, la translitération pourrait afficher “Cher Stéphane” comme “Cher Stphane”

Une solution concernant les langage WEB, est d’utiliser les entités HTML :

é -> é
è -> &eagrave;

Dans un autre context, par exemple une suite bureautique (office 365, openoffice,…), lorsqu’on importe dans le tableur excel, un fichier de données .csv, il est important de spécifier l’encodage de caractères source, sinon les caractères étendus seront cassés et afficheront des données inattendues !

Exemples de définitions d’encodages de caractﷰres dans diffrentes situations 

Apache

#Définir l'encodage de caractère UTF-8
AddDefaultCharset utf-8
#Pour définir l'encodage sur certaines pages : css, js, etc.
AddCharset utf-8 .htm .html .js .css

MySQL 

#UTF-8 Unicode CI pour insensible à la casse
ALTER DATABASE dbname CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

PHP

//Envoyer un en-tête au navigateur
header('Content-Type: text/html; charset=utf-8');
//Définir l'encodage de la connexion au serveur MySQL
mysql_query("SET NAMES 'utf8'");

HTML

    

<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="fr" lang="fr">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
 
    <title></title>
</head>
<body>
 
 
</body>
</html>

Rubriques du 12h30

🛠 Boîte à outil

Codes ASCII
À (a majuscule accent) = Alt+0192
É (e majuscule accent aigu) =Alt+0201
È (e majuscule accent grave) = Alt+0200
Ç (c cédille majuscule) = Alt+0199
Ù (u majuscule accent grave) = Alt+0217

< &lt; &#60; Less-than
> &gt; &#62; Greater than
@ &#64; At sign
© &amp;copy; &amp;#169; Copyright
® &amp;reg; &amp;#174; Registered trademark
« &amp;laquo; &amp;#171; Opening/Left angle quotation mark
» &amp;raquo; &amp;#187; Closing/Right angle quotation mark
♠ &amp;spades; &amp;#9824; Spade
♣ &amp;clubs; &amp;#9827; Club
♥ &amp;hearts; &amp;#9829; Heart
♦ &amp;diams; &amp;#9830; Diamond

🕕🔵▶️🚀✨

☕️ 👍 ❤️ 🌶 🔥 🤯 

📣🎬🎹 🎨 🎵
🕸 🌍💡 ⚗️ 🧪 🔌 🔋
⏳⏱🦄 🐛 🦋🖖🧐

♞DoCumentations

⚠ Suggestions

Showreal Print
Showreal Live
Showreal Web