Au tour des pages, dans l'entête de chacune d'elle, incluez dans la section <header> cette instruction : <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
Voila une bonne chose de faites, cependant il nous reste mysql....
Pour créer une table en utf-8 il faut utiliser ce genre de procédure : CREATE TABLE nouvelletable (titre VARCHAR(100) CHARACTER SET utf8 COLLATE utf8_bin NOT NULL, message TEXT CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ) CHARACTER SET utf8;
Mais que ce passe t'il ? Il utilise utf8_bin et utf8_general_ci ! En réalité les deux sont bien utf-8 cependant utf8_bin est sensible à la casse lors des comparaison tandis que utf8_general_ci est insensible à la casse ! Pour basculer une base existante en utf-8, vous pouvez utiliser cette instruction Attention dans certain cas les accents sont mal interprétés ALTER DATABASE ma_table DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci
Mais la manière la plus sure reste l'exportation dans votre encodage et la ré importation en basculant l'encodage en utf-8
Maintenant il faut que la communication entre le site et la base de donnée se fasse en utf-8, pour assurer une telle communication, il suffit d'ajouter une instruction sous votre requête de connexion à mysql :
$LINK = mysql_connect("localhost", "identifiant", "mot_de_passe")or die("Impossible de se connecter : " . mysql_error());
mysql_select_db("mabdd",$LINK);
mysql_query('SET NAMES utf8');
Et voila vous pouvez dès à présent vous amusez avec UTF-8