4Fermer6
YmoxLe 06/12/2009 à 14:45
Bon, je vais abuser des services des yAronautes pendant un moment encore…

J'ai donc des pages encodées en utf-8. Une base de données encodées en utf8_general_ci. Normalement.
Quand je l'exporte, je sauvegarde le fichier en utf-8 (sans BOM) avec Notepad++. Quand je l'importe sur un autre ordinateur, mon encodage qui fonctionne sur l'un (comprendre par là que mes pages s'y affichent sans problème de jeu de caractères) ne fonctionne plus : c'est comme si j'avais mes valeurs encodées en ISO-8859-1 dans cette base de données fraîchement importée. Je crois en fait que PHP me renvoie mes données encodées ainsi, car quand j'affiche mes données avec phpMyAdmin, elles s'affichent lisiblement, et la page est en utf-8.

J'ai déjà essayé avec utf8_encode, mais ça ne fonctionne pas, car j'ai toujours certains caractères qui ne s'affichent pas correctement.

Le pire, c'est que si je fais une insertion dans la base de données via un formulaire personnel, les données que je récupère ensuite pour affichage sont dans le bon encodage, malgré les é et autres 〦 qui s'affichent lors du parcours de la BDD avec phpMyAdmin…
Si je fais une insertion dans la base via phpMyAdmin, les données ont l'air valables, mais quand je les récupères, ce n'est à nouveau pas le cas…

Est-ce qu'il y a un encodage spécial – tant pour l'interclassement général que pour mon fichier SQL – afin que je n'aie pas à taper ces pseudo-entités utf-8 dans mon fichier SQL, ni que je aie à retoucher les données après l'importation ?

Merci