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

Résolu/Fermé
Utilisateur anonyme - Modifié par DJ Fire-Black le 8/07/2011 à 23:56
patricia@84 Messages postés 106 Date d'inscription vendredi 27 novembre 2015 Statut Membre Dernière intervention 24 septembre 2023 - 9 déc. 2015 à 08:49
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.
A voir également:

5 réponses

Utilisateur anonyme
17 juin 2011 à 17:35
Mais quand je mets la page en UTF-8, ça ne met toujours pas les bons caractères.
0
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
17 juin 2011 à 19:58
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+
0
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 ?
0
thibautB Messages postés 140 Date d'inscription jeudi 7 mai 2015 Statut Membre Dernière intervention 26 octobre 2016 1
9 déc. 2015 à 00:13
utilise l'html5 avec le <!doctype html> et le <meta charset = "utf-8">
0
jisisv Messages postés 3645 Date d'inscription dimanche 18 mars 2001 Statut Modérateur Dernière intervention 15 janvier 2017 934
Modifié par jisisv le 17/06/2011 à 04:07
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)
-1
mpmp93 Messages postés 6648 Date d'inscription mercredi 13 avril 2011 Statut Membre Dernière intervention 28 septembre 2015 1 339
17 juin 2011 à 08:42
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+
-1

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
patricia@84 Messages postés 106 Date d'inscription vendredi 27 novembre 2015 Statut Membre Dernière intervention 24 septembre 2023 9
9 déc. 2015 à 08:49
Bonjour,

Avez-vous essayé, dans votre fichier de configuration, d'ajouter :
mysql_query("SET NAMES 'utf8'");
-1