UTF-8 et caractères en majuscule

Eléphanteau du PHP | 17 Messages

03 févr. 2012, 16:27

Bonjour,
Je rencontre le problème suivant avec un affichage de caractères UTF-8. Le texte d'exemple débute par une majuscule "À". Ce caractère est correctement encodé en utf8 dans ma table qui est en utf8_bin ainsi que le champ et la base. L'encodage de la page est correctement défini, d'ailleurs les caractères accentués en minuscules s'affichent correctement, ceux-ci sont aussi en utf8 dans la table.
Quel serait le moyen pour afficher correctement les caractères accentués en majuscule ?

Merci

lime
Invité n'ayant pas de compte PHPfrance

03 févr. 2012, 17:37

Bonjour , voici la démarche a suivre :

ouvrir le fichier en dreamweaver :

ensuite choisir => modifier=>Titre/codage=> et cocher : inclure une signature unicode =Ok , enregistrer et retransférer le fichier

et ce va marcher :)

ViPHP
ViPHP | 2287 Messages

03 févr. 2012, 18:09

Bonjour , voici la démarche a suivre :

ouvrir le fichier en dreamweaver :

ensuite choisir => modifier=>Titre/codage=> et cocher : inclure une signature unicode =Ok , enregistrer et retransférer le fichier

et ce va marcher :)
Les signatures unicode, c'est le mal (et dreamweaver aussi d'ailleurs).

@Shiva : probablement un problèmes d'en-tête http (ou de balise meta), ou alors de charset de la connexion à MySQL. tu peux te tourner vers ce tuto très complet pour des précisions : faq-tutoriels/encodage-utf-t245062.html
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Eléphanteau du PHP | 17 Messages

03 févr. 2012, 19:01

Je ne suis pas un utilisateur de dreamweaver qui n'est pas fait pour faire du PHP de toute façon... J'utilise nusphere phped 5.9 et j'ai toujours fais gaffe à utiliser l’encodage UTF-8 pour mes fichiers.

Calimero : Merci pour le lien. A part l’ajout de mysql_set_charset() (qui ne règle pas le problème) le reste était déjà positionné comme il faut.
Concernant mon texte, ce qui est bizarre c'est que le problème se trouve être sur les caractères accentués en majuscule et non ceux en minuscule. Dans la table on voit très bien les notations UTF-8 de ces caractères. Mon navigateur n'aimerai pas les majuscules accentuées ?

ViPHP
ViPHP | 2287 Messages

03 févr. 2012, 19:07

Je ne suis pas un utilisateur de dreamweaver qui n'est pas fait pour faire du PHP de toute façon... J'utilise nusphere phped 5.9 et j'ai toujours fais gaffe à utiliser l’encodage UTF-8 pour mes fichiers.

Calimero : Merci pour le lien. A part l’ajout de mysql_set_charset() (qui ne règle pas le problème) le reste était déjà positionné comme il faut.
Tu peux aussi tenter la requête SQL suivante pour modifier le charset de la connexion :
SET NAMES 'utf8'
Concernant mon texte, ce qui est bizarre c'est que le problème se trouve être sur les caractères accentués en majuscule et non ceux en minuscule. Dans la table on voit très bien les notations UTF-8 de ces caractères. Mon navigateur n'aimerai pas les majuscules accentuées ?
Pour avoir une idée de l'origine du problème, tente de voir ce qui se passe pour des caractères provenant du code PHP (ou HTML) et aussi d'une bdd, histoire de voir si ça se passe pareil dans les deux cas.

Si c'est pareil regarde du coté des headers http (et/ou balise meta équivalente) selon les pistes décrites dans le tuto :) (Ton navigateur web peut aussi t'afficher quel est l'encodage qu'il a détecté pour ta page, en cherchant un peu dans les menus : "informations sur la page", "propriétés", etc suivant navigateur)

Si c'est seulement du côté de la base de données, alors la requête ci-dessus (éxécutée en premier après l'ouverture de ta connexion à mysql avec php) peut peut-être aider.
if(!@work()){ Nespresso(); } else { what(); }
______________________________

Eléphanteau du PHP | 17 Messages

03 févr. 2012, 19:26

Le SET NAMES UTF-8 est en place et les infos concernant ma page m'indiquent bien que celle ci est en UTF-8
Reste à tester comme tu dis avec des caractères provenant du PHP et de la database bien que je ne pense pas que le problème vienne de celle-ci.
Les recherches continuent...

Eléphanteau du PHP | 17 Messages

03 févr. 2012, 20:43

Bon, je viens de trouver la solution suivante :
passer les tables et tous les champs en utf8_general_ci et là tout est ok.
En espérant ne pas avoir de mauvaises surprises par la suite...