2010-03-10 4 views
0

Je me demandais si quelqu'un avait déjà essayé de faire entrer Eth dans une base de données MySQL correctement? J'ai un simple formulaire html, traité en utilisant le code PHP4 qui stocke les données dans mysql, mais je veux permettre aux utilisateurs d'utiliser des caractères tels que Ð, æ, ö et autres. J'ai essayé différents classements tels que latin1 et utf8_unicode_ci mais aucun ne semble vouloir les accepter correctement, je reçois soit un point d'interrogation, soit des caractères complètement différents.Entrer Eth (Ð) dans mysql

MySQL: 5.1.30
phpMyAdmin 3.2.4
défaut charset: UTF8
php charset: UTF8

Toute aide serait très appréciée. Même si c'est juste pour dire que ça ne peut pas être fait. Je réalise qu'il y a une chance que je ne peux pas couvrir pour tous les caractères possibles, mais jusqu'à ce que quelqu'un dise "Non!", Alors je vis dans l'espoir;)

Répondre

1

SET NAMES utf8 interrogez d'abord puis vérifiez votre jeu de caractères de table et les pages jeu de caractères si le problème persiste

il y a trois section principale dans votre application encoding:

  • codage de la page HTML. défini par Content-type En-tête HTTP
  • Codage de table db. défini par la définition de table
  • Codage db client (PHP). fixé par SET NAMES requête

Vérifiez les trois parties d'avoir une bonne encodage et vous n'aurez jamais aucun problème

+0

aha! sur ma connexion DB j'ai maintenant ajouté: mysql_set_charset ('utf8', $ conn); et cela semble avoir fonctionné parfaitement! Ma page a déjà été déclarée comme utf8, et la base de données mysql est utf par défaut. donc c'était juste ce dernier morceau de la trilogie qui me manquait. Merci beaucoup! –

Questions connexes