Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1584 connectés 

  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Les accents ne sont pas gérés ! HELP

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

[PHP] Les accents ne sont pas gérés ! HELP

n°365871
sire de Bo​tcor
Armorican way of life
Posté le 18-04-2003 à 09:01:24  profilanswer
 

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
mood
Publicité
Posté le 18-04-2003 à 09:01:24  profilanswer
 

n°365917
sire de Bo​tcor
Armorican way of life
Posté le 18-04-2003 à 09:36:07  profilanswer
 

personne n'a jamais eu ce genre de problème ?


---------------
«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
n°366270
mober
Mécréant Notoire
Posté le 18-04-2003 à 12:15:59  profilanswer
 

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.

n°366490
sire de Bo​tcor
Armorican way of life
Posté le 18-04-2003 à 15:02:22  profilanswer
 

Ç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 !...


---------------
«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
n°366575
beleg
黑社會
Posté le 18-04-2003 à 15:49:00  profilanswer
 


et si tu utilises HTML_entities avant decrire tes donnees dans la base ?

n°368567
omega2
Posté le 22-04-2003 à 16:51:25  profilanswer
 

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. ;)

n°368598
antp
Super Administrateur
Champion des excuses bidons
Posté le 22-04-2003 à 17:13:54  profilanswer
 

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


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°368605
omega2
Posté le 22-04-2003 à 17:20:22  profilanswer
 

antp a écrit :


 
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

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é. ;)

n°368614
antp
Super Administrateur
Champion des excuses bidons
Posté le 22-04-2003 à 17:26:08  profilanswer
 

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 :


PS : Moi, je fais quand même des htmlentities pour raison de sécurité. ;)


 
ouais par sécurité tu devrais aussi envoyer les données en HTTP1 plutôt que 1.1 :D


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°368632
omega2
Posté le 22-04-2003 à 17:36:50  profilanswer
 

antp a écrit :


 
au moins depuis HTML4, ça passe sans problèmes dans IE4/NS4/Opera4 en tout cas
 
 
 
ouais par sécurité tu devrais aussi envoyer les données en HTTP1 plutôt que 1.1 :D

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. :D ). Depuis, j'oublis pas ce genre de protection. ;)

mood
Publicité
Posté le 22-04-2003 à 17:36:50  profilanswer
 

n°368635
antp
Super Administrateur
Champion des excuses bidons
Posté le 22-04-2003 à 17:38:16  profilanswer
 

je vois pas le rapport :heink:


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°368638
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 22-04-2003 à 17:39:07  profilanswer
 

boolay detected
 
http://forum.hardware.fr/forum2.php3?post=35590&cat=10


---------------
J'ai un string dans l'array (Paris Hilton)
n°368693
omega2
Posté le 22-04-2003 à 18:14:52  profilanswer
 

antp a écrit :

je vois pas le rapport :heink:

Maintenant que tu poses la question ... :D
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. ;)

n°368742
antp
Super Administrateur
Champion des excuses bidons
Posté le 22-04-2003 à 19:01:20  profilanswer
 
n°368745
antp
Super Administrateur
Champion des excuses bidons
Posté le 22-04-2003 à 19:02:54  profilanswer
 

omega2 a écrit :


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. ;)


 
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.


---------------
mes programmes ·· les voitures dans les films ·· apprenez à écrire
n°368786
omega2
Posté le 22-04-2003 à 19:40:22  profilanswer
 

antp 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.

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. ;)

n°371809
Harkonnen
Modérateur
Un modo pour les bannir tous
Posté le 25-04-2003 à 14:05:48  profilanswer
 

antp a écrit :


 
ça non plus je vois pas le rapport :heink:

:ouch:
je viens de me rendre compte que je me suis trompé de topic en postant ce lien :pfff:


---------------
J'ai un string dans l'array (Paris Hilton)
n°379254
raph77
Posté le 01-05-2003 à 11:06:53  profilanswer
 

[:yoyoz]  
 
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 :pfff:  
 
Une idée ?


Message édité par raph77 le 01-05-2003 à 11:07:08
n°380457
raph77
Posté le 02-05-2003 à 15:22:49  profilanswer
 

Bon, au cas où ça interesse quelqu'un, ça marche en utilisant la fonction quoted_printable_decode(...) ;)

n°433679
mober
Mécréant Notoire
Posté le 20-06-2003 à 01:17:41  profilanswer
 

raph77 a écrit :

Bon, au cas où ça interesse quelqu'un, ça marche en utilisant la fonction quoted_printable_decode(...) ;)


 
Merci


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  PHP

  [PHP] Les accents ne sont pas gérés ! HELP

 

Sujets relatifs
[PHP] Gestion courrier, documents....Authentification en PHP
[Oracle&PHP] Execution de procedures stockees -> à voir !D'ou viens le problème? installation PHP ?? je vois pas la...
[PHP]Changement de date anglais/francais[PHP] Appeler un fichier source situé sur un autre serveur.
[PHP] sessionsimpossible de trouver l'erreure....[PHP]
peut-on mettre du code PHP dans un script JavaScript? et inversement ?[PHP] calcule de date du lendemain par rapport a une date donnée!
Plus de sujets relatifs à : [PHP] Les accents ne sont pas gérés ! HELP


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR