Bonjour,
Quand les données sont codées au format utf8 dans la base de données, il faut ouvrir une connexion vers celle-ci dans PHP en exigeant ce format utf8.
Car pour MySQL, il faut utiliser la commande SET NAMES UTF8 pour communiquer avec une base de données codée en utf8.
Pour ce faire voici comment:
# ici la base de données TEST est codé en UTF8
$connexion = mysql_connect('localhost','root','') or die ("Erreur de connexion au serveur");
mysql_select_db('TEST', $connexion) or die ("Erreur d'ouverture de la base de données TEST");
# c'est pourquoi il faut ouvrir une connexion codée en UTF8
mysql_query("SET NAMES UTF8");
Ceci dit, toutes les pages HTML qui afficheront ces données UTF8 doivent être formatées pour ça en déclarant le codage UTF8 dans l’entête HTML.
Pour ce faire voici comment:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="fr" xml:lang="fr">
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8" />
Voilà.