Bonjour à toutes et à tous.
Depuis quelques temps je me bats face à un problème d'encodage en UTF8.
Résumé:
1°) Je crois avoir bien compris les bases pour l'encodage d'un site en UTF8. Donc je crée une page en XHTML en UTF8 avec encodage du fichier lui-même en UTF8. Les caractères s'affichent correctement é, à, € etc.
2°) Ma base (OVH ou free.fr = serveur de test) MySql semble être en UTF8_General_ci: "Interclassement pour la connexion au serveur".
3°) En suite je crée une table par le phpMyAdmin Dans cette table je crée par exemple une entrée en varchar ou text avec Interclassement en UTF8_General_ci.

4°) Toujours par phpMyAdmin j'insère une entrée en mettant des é, ç, à, € etc.
5°) Dans la page php je fais une requête simple "select * from table" puis mysql_query et fetch array... et j'affiche l'entrée: Jai des caractères en ISO dans une page UTF8.
5 BIS) par contre si je fais une insertion par la page php, puis une requête, les données s'affichent bien alors que dans la base j'ai des é etc...

J'ai évidemment essayé les utf8_encode et utf8_decode. Et là c'est le bazard.

Est-ce que qqun a une solution pour moi? Qu'est-ce que j'ai loupé?

Merci.
a écrit :
5°) Dans la page php je fais une requête simple "select * from table" puis mysql_query et fetch array... et j'affiche l'entrée: Jai des caractères en ISO dans une page UTF8.
5 BIS) par contre si je fais une insertion par la page php, puis une requête, les données s'affichent bien alors que dans la base j'ai des é etc...


Si par « dans la base » tu veux dire « ce qu'affiche phpMyAdmin » (attention à ne pas confondre les deux, c'est vraiment pas pareil), le verdict me paraît clair, ce dernier est en ISO-8859-1 ou en tout cas gère incorrectement les encodages, et donc soit tu as le pouvoir d'agir sur ce fait (mise à jour ?), soit il faut arrêter de l'utiliser.

Si tu as besoin d'un autre panel d'administration SQL, tu peux peut-être regarder Adminner.