Les Allergies
Alimentaires
Posez votre question Signaler

Encodage MySQL UTF-8 -> HTML iso-8859-1

DJ Fire-Black 6908Messages postés 28 décembre 2007Date d'inscription 7 avril 2012Dernière intervention - Dernière réponse le 17 juin 2011 à 21:04
Salut,
J'ai un problème assez con avec mon site.
Il se trouve que ma base SQL est encodée en UTF-8 (Hébergé sur un serveur Linux).
Mais que les pages HTML affichent en iso-8859-1 (selon l'header HTML).
Du coup les caractères spéciaux s'affichent très mal.
J'aimerais connaître une solution pour que ces caractères s'affichent normalement.
J'utilise PDO pour accéder à la base. Lors de l'affichage du texte, je fais simplement :
echo htmlentities($letexte);

Mais lorsque j'essaie de contrer le problème, le texte ne s'affiche carrément pas.
Je suis complétement perdu donc.
Si vous savez comment résoudre ça, ce serait cool. Merci d'avance.
Lire la suite 

Encodage MySQL UTF-8 -> HTML iso-8859-1 »

5 réponses
Réponse
+0
moins plus
Tu ferais mieux d'utiliser utf-8 dans tes pages et d'abandonner iso8*****.

Evidemmenent certains OS pourris et leurs logiciels proprios ne renedent pas la chose aisée.

Gates gave ^H sold you the windows.
GNU gave us the whole house.(Alexandrin)
Ajouter un commentaire
Réponse
+0
moins plus
Bonjour,

La solution la plus simple: être 'full-UTF8' sur toute la chaîne de développement...

Toute autre solution en vous apportera que des emm....ents. de plus, en UTF8, plus besoin d'entités genre é en &eacute...

En savoir plus sur la chaîne full-UTF8:
http://html5.immo-scope.com/index.php?page=general/applisFullUtf8

A+
Ajouter un commentaire
Réponse
+0
moins plus
Mais quand je mets la page en UTF-8, ça ne met toujours pas les bons caractères.
Ajouter un commentaire
Réponse
+0
moins plus
Bonsoir,

la page doit pas seulement être en UTF8, le code source PHP/HTML doit AUSSI être en UTF8.

Avez-vus BIEN lu toute la page que je vous ai donné en lien?

A+
DJ Fire-Black- 17 juin 2011 à 21:04
Je n'avais pas vu que tu avais donné un lien désolé.

Bref j'ai encodé les fichiers aussi mais le problème persiste.

Je viens de voir que ma base est UTF-8 mais que mes champs sont à l'interclassement latin1_swedish_ci.

Le problème vient de là ?

J'ai changé un champ en utf8_unicode_ci mais les caractères ne changent pas.
Ils ne sont pas ré-encodés automatiquement ?
Ajouter un commentaire
Ce document intitulé « Encodage MySQL UTF-8 -> HTML iso-8859-1 » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
Passage au tout numérique : quel coût pour les particuliers ?