J'ai récemment eu les mêmes problèmes moi-même.
Voici quelques conseils :
- TOUS les attributs doivent être définis sur ut8 (le classement n'est PAS le même que le jeu de caractères)
- Enregistrez le document au format UTF-8 (si vous utilisez Notepad++, c'est Format -> Convertir en UFT-8)
- L'en-tête en PHP et HTML doit être défini sur UTF-8 (HTML :
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
et PHP :header('Content-Type: text/html; charset=utf-8');
- Lors de la connexion à la base de données, définissez également le jeu de caractères UTF-8, comme ceci :
$link->set_charset("utf8");
(directement après la connexion) - Assurez-vous également que votre base de données et vos tables sont définies sur UTF-8, vous pouvez le faire comme ceci :
ALTER DATABASE databasename CHARACTER SET utf8 COLLATE utf8_unicode_ci;
ALTER TABLE tablename CONVERT TO CHARACTER SET utf8 COLLATE utf8_unicode_ci;
N'oubliez pas que TOUT doit être défini sur le code de caractères UFT-8, sinon des éléments tels que "Øسناً" seront insérés. J'espère que cela vous a aidé !