Je vais répondre ici car c'est trop long pour un commentaire.
Vous n'avez pas besoin de changer votre encodage, vous devriez vérifier votre encodage. N'oubliez pas que l'encodage peut être modifié à de nombreux endroits :
- Dans votre base de données avec fonctions charset
- Dans votre configuration apache avec AddDefaultCharset
- Avec php fonction d'en-tête
- Dans votre html avec un
<meta http-equiv="Content-Type" content="text/html; charset=utf-8">
balise
Chacune de ces raisons peut entraîner un codage erroné affiché dans le navigateur Web. Et si vous ne le spécifiez pas avec une ou plusieurs des méthodes précédentes, la couche correspondante utilisera sa configuration par défaut.
Dans votre cas, puisque le texte provient de la base de données et que souvent dans WAMP/XAAMP/MAMP MySQL utilise un encodage par défaut étrange, je vérifierais le premier point. Essayez d'exécuter SET NAMES UTF-8
(ou quel que soit l'encodage que vous utilisez) requête avant récupération des données, juste après votre fonction db connect.