Problème encodage accent grave

Signaler
Messages postés
2
Date d'inscription
mercredi 1 novembre 2006
Statut
Membre
Dernière intervention
4 décembre 2008
-
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011
-
Bonjour,

J'ai un soucis avec le stockage de mes accents en base de données. Plutôt classique mais le truc bizarre c'est que ça ne me le fait pas avec tous les accents.

J'ai un champ nom par exemple dans mon formulaire. Je récupère les paramètres en POST.
Si je mets "é" et que je regarde $_POST['nom'] j'ai bien "é".
Par contre si je mets "è", dans $_POST['nom'] j'ai è

Du coup quand je stocke mes données dans ma base, via un htmlentities($var) il me stocke pour "è" : è'
Et forcément quand j'affiche mes données avec un echo html_entity_decode($var) il m'affiche è au lieu de "è"

Ma page est encodé en charset=windows-1250.
J'ai bien tenté en charset=utf-8 mais ça n'a pas résolu le problème... ou alors je m'y suis mal pris.

Si quelqu'un à une idée... Je suis preneur.

(PS : un autre truc un peu suspect... quand je stocke via htmlentities un "é" il va me stocker é ça c'est normal, mais quand je vais le faire pour "è", il me sort le fameux è Pourquoi j'ai pas un bon vieux è ???? Pareil pour "à" qui devient à au lieu de à)

Merci

3 réponses

Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

hello surement du au fait que tu a l'une des derniere version Mysql et du coup tes requetes ne sont plus automatiquement encoder en ISO-8859-1 donc il faut encoder tes caractere avant de les stocker...

Si ta page est en utf8, il faut appliquer utf8_decode(); a ton $_POST envant de faire une reauete d'insertion dans ta bdd
Messages postés
329
Date d'inscription
samedi 4 janvier 2003
Statut
Membre
Dernière intervention
29 mars 2015
3
Punaise exactement le même pb...
ma page est en
iso-8859-2

j'ai essayé utf8_encode et utf8_decode ou rien ... avant d'envoyer les données à la base ... et ça change rien je me retrouve avec des è à la place de mes è dans la bdd ... sur un champ : mediumtext latin1_swedish_ci

je capte plus rien :(
HELP !
Messages postés
1375
Date d'inscription
dimanche 28 novembre 2004
Statut
Membre
Dernière intervention
2 août 2011

Hello,

Change l'encodage de ton champ latin1_swedish_ci en utf8_general_ci


-- Orange73 --

"L'homme n'est pas fait pour travailler, la preuve c'est que cela le fatigue" (Voltaire)