Page 1 sur 1

Problème d'encodage

Posté : 05 avr. 2008, 23:37
par kertrats
Bonjour,
J'ai un problème d'encodage sur mon site Web. J'utilise comme content-type pour mes pages Web : "text/html; charset=utf-8" mes pages fonctionnent correctement sauf le résultat d'un formulaire. en effet, lorsque je soumets mon formulaire (en POST) et utilise une expression régulière pour vérifier les contenus des champs du formulaire, les accents ne sont pas reconnus.
si je fais un htmlentities sur les valeurs issues du formulaire, j'ai le même problème de caractère non reconnus comme si les caractères étaient en iso-8859-1 alors qu'ils devraient être en utf-8. J'ai tenté de mettre accept-charset="utf-8" dans le formulaire sans plus de succès.

Quelqu'un a une idée du problème ?

Merci par avance.
Pierre.

Posté : 06 avr. 2008, 05:07
par BeRoots
j'ai eut le m^me soucis et j'ai mis de coté utf-8 pour le moment. je pense que la question a ce poser est est ce que le codag utiliser par la machine de l'utilisateur peut poser problème si different de utf-8?

j'espere que quelqu'un pourra t'eclairer. sa ferra d'une pierre deux coup :)

Re: Problème d'encodage

Posté : 06 avr. 2008, 05:44
par AB
si je fais un htmlentities sur les valeurs issues du formulaire, j'ai le même problème de caractère non reconnus comme si les caractères étaient en iso-8859-1 alors qu'ils devraient être en utf-8. J'ai tenté de mettre accept-charset="utf-8" dans le formulaire sans plus de succès.

Quelqu'un a une idée du problème ?

Merci par avance.
Pierre.
J'suis pas spécialiste non plus dans ce domaine car j'utilise encore iso-8859-1. Cela dit je crois que par défaut htmlentities utilise l'iso-8859-1, donc il faut spécifier utf-8 dans les paramètres si tu veux que cette fonction prenne en compte ce charset

Posté : 06 avr. 2008, 12:40
par Victor BRITO
As-tu vérifié si ton fichier contenant le formulaire était bien édité en UTF-8 ? ;)

[résolu]

Posté : 07 avr. 2008, 13:44
par kertrats
Bonjour,
Tous les fichiers de mon site sont créés en UTF-8 (j'utilise PSPAD comme éditeur et il me le confirme).

Je vais tester mais je pense que la solution est celle de AB, en effet, je sais pas pourquoi je n'y ai pas pensé seul, le pire c'est que je sais pertinamment qu'il y a ce paramètre dans la fonction htmlentities() :oops: mais c'est la première fois que je suis obligé de faire un site en utf-8 et du coup l'habitude prenant le dessus j'ai complètement zappé de tester ceci.
Enfin bref, je teste et je vous tiens au courant.

Merci.

Alors je confirme le htmlentities résout partiellement le problème mais ce n'est pas tout, je ne sais pas pourquoi mais forcer l'utf-8 avec la balise meta ne suffit par, il faut aussi que je précise pour chaque page l'utf-8 dans l'en-tête : header("Content-Type: text/html; charset=utf-8"). Voila merci pour tout