Problème d'affichage de caractères spéciaux

bartmaul3000 Messages postés 7 Date d'inscription lundi 22 septembre 2008 Statut Membre Dernière intervention 9 avril 2010 - 9 avril 2010 à 03:05
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 - 14 avril 2010 à 17:04
Bonjour tout le monde,
j'aurai besoin d'aide à propos d'affichage de caractères spéciaux.

Ma BDD contient des caractères hiraganas(japonais), l'interclassement est en utf8_general_ci. Lorsque je requete ma bdd avec phpMyAdmin ma liste de données s'affiche correctement.

Le problème c'est dans l'exécution de mon code PHP, mes caractères s'affichent : ?

J'ai beau mettre :
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
mais sans changements...

j'ai essayé de modifier l'interclassement (utf8_unicode_ci) et de définir charset=iso-8859-1 mais mes hiraganas s'affichent toujours : ?



merci d'avance ;)

9 réponses

nomidiya Messages postés 8 Date d'inscription samedi 16 décembre 2000 Statut Membre Dernière intervention 1 juin 2011
12 avril 2010 à 01:49
moi aussi j'ai le même problème est ce que tu as trouvé une solution car moi mon site est un journal électronique donc l'admin poste des article mais quand il s affiche au lieu des caractères spéciaux des truc bisard apparait
j ai besoin de l'aide
je vous remercie d'avantage
0
roymatthieu Messages postés 112 Date d'inscription jeudi 31 août 2006 Statut Membre Dernière intervention 3 février 2011 1
12 avril 2010 à 14:33
Salut,

Il faut jouer avec utf8_encode et utf8_decode et htmlentities...

conserver

<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />


quand tu veux afficher ton texte -> il faut essayer un des huits cas, je ne me rappelle plus le quel.

echo utf8_encode($txt);

echo utf8_encode(htmlentities($txt));

echo htmlentities(utf8_encode($txt));

echo utf8_decode($txt);

echo utf8_decode(htmlentities($txt));

echo htmlentities(utf8_decode($txt));

essaye voir si ça donne qq chose...

++
0
roymatthieu Messages postés 112 Date d'inscription jeudi 31 août 2006 Statut Membre Dernière intervention 3 février 2011 1
12 avril 2010 à 14:34
pardon, c'est six cas...
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
12 avril 2010 à 16:07
Salut,

Le mieux reste tout de même, si aucune contre indication n'existe, de tout encoder en utf8 plutôt que de passer par des conversions qui demandent des ressources sans doute inutiles.
Cela va de l'encodage de ton éditeur, en passant par celui du serveur MySQL, de la page web (balise meta charset=...), sans oublier d'éventuelles directives côté serveur web ou fichier de conf PHP.


Cordialement,


Kohntark -
0

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

Posez votre question
roymatthieu Messages postés 112 Date d'inscription jeudi 31 août 2006 Statut Membre Dernière intervention 3 février 2011 1
12 avril 2010 à 16:27
@Kohntark

Salut, c'est vrai tu as complètement raison...

Néanmoins, lorsque j'ai fais cela j'ai eu des soucis de codes sources dans mon éditeur.

Je me sers de DW pour la coloration syntaxique uniquement...

Certains caractères spéciaux avaient alors disparus des expressions régulière ou d'autre fonction...

et donc, je ne passe plus l'éditeur en utf-8...

Si tu connais un super éditeur autre que nodepad++ communique le moi par mp...

Bien à toi.
0
nomidiya Messages postés 8 Date d'inscription samedi 16 décembre 2000 Statut Membre Dernière intervention 1 juin 2011
12 avril 2010 à 23:26
bonsoir
moi je n'ai trouvé ce blem qu'aprés que j'ai hébérgé mon site car en local ca marche tré bien.j'ai esseyé avec la balise meta utf8 mais ca na fut qu'a agravé la situation svp si qq un pourra m'aidé je seré reconnaissante car je ss perdue
yousra
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
13 avril 2010 à 06:21
@roymatthieu :
Je ne connais ni DW ni notepad++ mais les deux doivent gérer sans pb l'utf-8.
Perso j'utilise l'IDE Netbeans et PSPad.
J'ai déjà rencontré des pbs avec le second lors du passage de l'ISO8859 à l'UTF-8 ... sans réellement savoir pourquoi. Dans ce cas une correction manuelle des caractères puis un réenregistrement fixe le pb.

@nomidiya :
Comme dit plus haut la balise meta utf8 ne suffit pas. Regarde donc les points que je citais dans mon dernier message (éditeur, mysql, ...)


Cordialement,


Kohntark -
0
nomidiya Messages postés 8 Date d'inscription samedi 16 décembre 2000 Statut Membre Dernière intervention 1 juin 2011
13 avril 2010 à 19:55
bonjour Kohntark,
pourra tu expliqué d'avantage ce que je dois faire merci d'avance!!!

nomidiya
0
kohntark Messages postés 3705 Date d'inscription lundi 5 juillet 2004 Statut Membre Dernière intervention 27 avril 2012 30
14 avril 2010 à 17:04
Re,

Il serait souhaitable que toi aussi tu expliques d'avantage :
quel éditeur utilises tu ? quel SGDB ? quel serveur ? ...

Il faut commencer par le ... commencement :
- tu entres ton code dans un éditeur
=> il faut le configurer en UTF-8

- tu utilises une base de données
=> le serveur doit être en UTF-8

- tu utilises un serveur WEB
=> il doit fournir les pages en UTF-8
=> ces dernières doivent contenir la balise meta ci-dessus citée


Il y a d'autres éléments qui peuvent rentrer en compte, mais commence déjà par là.


Cordialement,


Kohntark -
0
Rejoignez-nous