Charset: gestion des accents en utf8?

nina_bee
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 11
Inscription: 24 Juil 2007

Charset: gestion des accents en utf8?

Message le Mer Aoû 01, 2007 11:52

bonjour,
pour mon site j'utilise une base de donnée classique par exemple un membre entre son nom et son prénom, ces données sont stokées dans ma base et quand il revient, son nom s'affiche.
Aucun problème pour ceux qui n'on pas d'accent mais les autres... Tous les caractères accentués de la base apparaissent en lettres spéciales. Pourtant tout est en utf8: mes pages php et ma base mysql. Par contre certains champs de ma base sont en interclassement latin1-german2-ci.
Comment regler ce problème?
Merci d'avance


Joe Le Mort
WRInaute occasionnel
WRInaute occasionnel
 
Messages: 260
Inscription: 8 Aoû 2006

Message le Mer Aoû 01, 2007 11:55

il faut que ta base soit en ut8, la tu as du latin1.

recherche sur le forum, on en a parlé :
http://www.webrankinfo.com/forums/viewtopic_33664.htm
http://www.webrankinfo.com/forums/viewtopic_9439.htm

etc...

nina_bee
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 11
Inscription: 24 Juil 2007

Message le Mer Aoû 01, 2007 13:12

salut joe, merci de ton aide. J'ai mis de l'utf 8 unicode mais quand je rentre des données par mon formulaire les accents ne prennent pas...
as tu une autre idée?

FloBaoti
WRInaute impliqué
WRInaute impliqué
 
Messages: 755
Inscription: 30 Avr 2006

Message le Mer Aoû 01, 2007 13:20

Jongle avec les fonctions utf8_encode() et utf8_decode() de PHP...


dorian53
WRInaute passionné
WRInaute passionné
 
Messages: 2199
Inscription: 10 Avr 2005

Message le Mer Aoû 01, 2007 13:36

Ca dépend de la configuration du AddDefaultCharset sur ton serveur.

Ca doit se répercute sur les données envoyer en post et en get dans ton formulaire.

FloBaoti
WRInaute impliqué
WRInaute impliqué
 
Messages: 755
Inscription: 30 Avr 2006

Message le Mer Aoû 01, 2007 13:38

Ah oui j'oubliais, il faut spécifier le charset dans les en-têtes HTTP:
Code: Tout sélectionner
header(Content-Type: text/html; charset=UTF-8");

(à mettre au tout début de ton fichier PHP)

avec ça, tu peux éviter d'utiliser les fonctions utf8_ de PHP.

nina_bee
Nouveau WRInaute
Nouveau WRInaute
 
Messages: 11
Inscription: 24 Juil 2007

Message le Mer Aoû 01, 2007 13:47

Merci à tous pour votre aide. Mon erreur vennait en fait de la facon don je récupérais les données entrées dans les champs: en effet en utilisant htmlentities, je transformais tous mes accents en caractères spéciaux. Merci à tous de votre aide
:wink:


Si vous avez aimé cette discussion, partagez-la sur vos réseaux sociaux préférés :

Lectures recommandées sur ce thème :



Qui est en ligne

Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 1 invité