Les accents ne sont pas gérés ! HELP [PHP] - PHP - Programmation
Marsh Posté le 18-04-2003 à 09:36:07
personne n'a jamais eu ce genre de problème ?
Marsh Posté le 18-04-2003 à 12:15:59
Habituellement ça passe, mais de toute façon la solution réellement satisfaisante est de modifier ton script pour qu'il replace les caractères accentués par leurs codes html respectifs.
Marsh Posté le 18-04-2003 à 15:02:22
Ça ne changerait rien puisque c'est à la sortie de la base que les accents se font virer...
Lorsque je commence à les utiliser, ils sont déjà morts...
Et je ne peux pas non plus les transformer directement dans la base parce que je ne suis pas le seul à pouvoir y accéder donc d'autres pourrait ne pas mettre les codes HTML d'accents.
Ce que je voudrais surtout savoir c'est d'où vient ce problème d'accent !...
Marsh Posté le 18-04-2003 à 15:49:00
et si tu utilises HTML_entities avant decrire tes donnees dans la base ?
Marsh Posté le 22-04-2003 à 16:51:25
sire de botcor a écrit : Ce que je voudrais surtout savoir c'est d'où vient ce problème d'accent !... |
Surement un problème d'encodage des caractères.
A tout les coups, tout le monde ne lui envoit pas les caractères de la même manière et la bdd n'est pas réglé pour faire de la translation de caractère, ou alors le système détecte mal quel est l'encodage utilisé en entré.
Bon courage pour trouver d'où ca vient surtout si t'as pas accés aux infos de réglage de la base de donnée.
Marsh Posté le 22-04-2003 à 17:13:54
mober a écrit : pour qu'il replace les caractères accentués par leurs codes html respectifs. |
y a plus besoin de faire ça depuis quelques années, suffit de mettre le bon type d'encodage dans les <meta> de la page HTML
Marsh Posté le 22-04-2003 à 17:20:22
antp a écrit : |
C'est www compliant ou alors c'est juste un fait du à l'amélioration progressive des navigateurs?
PS : Moi, je fais quand même des htmlentities pour raison de sécurité.
Marsh Posté le 22-04-2003 à 17:26:08
omega2 a écrit : C'est www compliant ou alors c'est juste un fait du à l'amélioration progressive des navigateurs? |
au moins depuis HTML4, ça passe sans problèmes dans IE4/NS4/Opera4 en tout cas
omega2 a écrit : |
ouais par sécurité tu devrais aussi envoyer les données en HTTP1 plutôt que 1.1
Marsh Posté le 22-04-2003 à 17:36:50
antp a écrit : |
Ben tu sais, au court de la première journée de test de mon chat, on m'a fait le coup de me mettre un meta refresh dans un message en exemple de comment falait faire pour rafraichir sans javascript (je débutais. ). Depuis, j'oublis pas ce genre de protection.
Marsh Posté le 22-04-2003 à 17:38:16
je vois pas le rapport
Marsh Posté le 22-04-2003 à 17:39:07
boolay detected
http://forum.hardware.fr/forum2.php3?post=35590&cat=10
Marsh Posté le 22-04-2003 à 18:14:52
antp a écrit : je vois pas le rapport |
Maintenant que tu poses la question ...
En fait avant ton intervention, je savais même pas que ca fesait partie de la norme html4 le coup de mettre l'encodage dans un <meta>. Bon, faut dire, j'ai jamais trouvé la moindre doc en francais sur les metas valide sur tel ou tel navigateur (je suis tombé une fois sur la liste des meta spécifique à IE mais à l'époque, pour moi c'était pas très utile vu que je voulais garder une compabilité avec netscape et d'autres navigateurs) et encore moins sur ceux qui sont normalisé. Même dans les bouquins soit disant sérieux et complet j'ai jamais vu de liste des meta.
Par contre, même si ta solution règle son problème au niveau de l'affichage dans le navigateur, je vois pas en quoi ca va l'aider à faire des traitements dessus au niveau de ces scripts en php.
Marsh Posté le 22-04-2003 à 19:01:20
ça non plus je vois pas le rapport
Marsh Posté le 22-04-2003 à 19:02:54
omega2 a écrit : |
C'était par rapport au post de mober
je vois pas pourquoi il faudrait convertir ses données en é etc.
Il faudrait plutôt mettre le bon encoding.
Dans ce cas-ci, le "é" qui devient ",", ça voudrait dire que l'un utilise le jeu de caractère DOS et l'autre Windows.
Marsh Posté le 22-04-2003 à 19:40:22
antp a écrit : |
Ha ok. Mais vu que si j'ai bien compris ils lisent et écrivent tout les deux dans la base de donnée, il faudra quand même qu'il fasse une translation de caractère avant d'écrire dans la base de donnée ... a moins de réussir à faire comprendre a la base de donnée que les données provenant de la connection du script php ne sont pas dans le jeux de caractère utilisé dans le reste de la base et donc qu'il faut qu'elle fasse elle même la translation.
Mais bon, ce genre de problème a terme c'est toujours chiant. Tant qu'on reste en système homogène on ce rend comptes de rien et le jour où on passe a des conections hétérogènes, tout le monde se retrouve à de voir bidouiller pour avoir les infos comme il faut.
Avec sybase, je sais qu'il y a une option à activé pour que la base prenne en compte l'info "jeux de caractère" des diférentes conections. C'est peut être pareil pour lui, mais seul un admin de base de donnée SQL Server qui accepte de ce casser le cul pendant un moment sur ce problème pourait le dire.
Marsh Posté le 25-04-2003 à 14:05:48
antp a écrit : |
je viens de me rendre compte que je me suis trompé de topic en postant ce lien
Marsh Posté le 01-05-2003 à 11:06:53
Quelqu'un a trouvé une solution ?
Je suis en train de me faire un webmail et pour certains, j'obtiens les caractères spéciaux remplacés par des codes (ex "é" devient "=E9" ).
Ca fait 2j que je cherche, je trouve pas de solution
Une idée ?
Marsh Posté le 02-05-2003 à 15:22:49
Bon, au cas où ça interesse quelqu'un, ça marche en utilisant la fonction quoted_printable_decode(...)
Marsh Posté le 20-06-2003 à 01:17:41
raph77 a écrit : Bon, au cas où ça interesse quelqu'un, ça marche en utilisant la fonction quoted_printable_decode(...) |
Merci
Marsh Posté le 18-04-2003 à 09:01:24
J'ai une base de données SQL Server
un serveur Apache et j'utilise PHP.
Le problème : lorsque je sors qqch de la base,
tous les accents sont virés et remplacés par des caractères bizarres (ex: é devient , et ë devient ?)
Comment empêcher ça ?
(pour l'instant j'ai bidouillé avec des str_replace mais c'est bancale :
ça cause des problèmes ave les virgules entre autres)
Message édité par sire de Botcor le 18-04-2003 à 09:02:01
---------------
«Ceux qui croient que les peuples suivront leurs intérêts et non leurs passions n’ont rien compris au XXe siècle.» © Raymond Aron