Bonjour,
Je deviens fou depuis plusieurs heures à tourner en rond sur ce problème. Je pense avoir tout essayé, mais j'ai forcément dû oublier quelque chose, sinon je ne serais pas ici
J'ai une bête page "test" avec le minimum de code et un content-type bien déclaré en uft8.
J'ai une base de données dont le jeu de caractères par défaut est utf8 et l'interclassement pour la connexion est utf8_general_ci. Dans cette base, j'ai une seule table en utf8_general_ci avec un seul champ text en utf8_general_ci qui ne contient qu'un seul caractère: "é".
Lorsque je fais une requête pour afficher le contenu de ce champ dans ma page test, je reçois en retour le drôle de sigle du problème typique quand on veut afficher de l'iso en utf8.
Mais le problème, c'est que TOUT a l'air pourtant bien configuré pour traiter l'utf8. Et le web-snifer présenté dans la FAQ m'indique bien que le content-type est utf8!!
Voici le code source de ma page affichée:
Le caractère qui s'affiche correctement a été écrit en dur manuellement dans le fichier, et, lui, passe bien à l'écran.
Le second représenté par un sigle est le même caractère, mais provenant de ma base MySql...
Si quelqu'un a une piste pour moi car je sèche complètement.
Merci d'avance
Edit: le sigle ne passe pas de le code il s'agit du petit losage noir contenant un ?
Modifié par Xav1979 (07 Dec 2008 - 09:14)
Je deviens fou depuis plusieurs heures à tourner en rond sur ce problème. Je pense avoir tout essayé, mais j'ai forcément dû oublier quelque chose, sinon je ne serais pas ici
J'ai une bête page "test" avec le minimum de code et un content-type bien déclaré en uft8.
J'ai une base de données dont le jeu de caractères par défaut est utf8 et l'interclassement pour la connexion est utf8_general_ci. Dans cette base, j'ai une seule table en utf8_general_ci avec un seul champ text en utf8_general_ci qui ne contient qu'un seul caractère: "é".
Lorsque je fais une requête pour afficher le contenu de ce champ dans ma page test, je reçois en retour le drôle de sigle du problème typique quand on veut afficher de l'iso en utf8.
Mais le problème, c'est que TOUT a l'air pourtant bien configuré pour traiter l'utf8. Et le web-snifer présenté dans la FAQ m'indique bien que le content-type est utf8!!
Voici le code source de ma page affichée:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>Document sans titre</title>
</head>
<body>
é
�</body>
</html>
Le caractère qui s'affiche correctement a été écrit en dur manuellement dans le fichier, et, lui, passe bien à l'écran.
Le second représenté par un sigle est le même caractère, mais provenant de ma base MySql...
Si quelqu'un a une piste pour moi car je sèche complètement.
Merci d'avance
Edit: le sigle ne passe pas de le code il s'agit du petit losage noir contenant un ?
Modifié par Xav1979 (07 Dec 2008 - 09:14)