Question

Signes diacritiques http://img98.imageshack.us/img98/3383/dijakritickiznakovi.gif

Ainsi, les symboles perdus au titre de l'affichage doivent être affichés de cette façon.
Les entités UTF-8 sont répertoriées ci-dessous le titre HTML (UTF-8) (voici la liste: LIEN)
Et Last Line montre ce qui est stocké dans ma base de données.
La collation de la table DB est utf8_unicode_ci.
Je suppose que les symboles en DB ne devraient pas être comme ils le sont dans mon cas? Ils s'affichent correctement sur la page lorsqu'ils sont chargés à partir de la base de données, mais ils ne sont pas tous affichés par le tableau UTF-8 à partir du lien donné. Même si je les vois correctement, peut-être que quelqu'un d'autre ne le fera pas?

Était-ce utile?

La solution

La définition du charset de table MySQL n'est pas suffisante - vous devez également prendre soin de définir le charme correct pour le client, la connexion et les résultats, qui peuvent différer du serveur à un serveur rendant votre base de données moins que portable: le même contenu de base de données peut être affiché différemment en déplaçant vers un autre serveur.

Je stocke du texte slovène dans MySQL depuis un certain temps maintenant et c'est ce qui fonctionne pour moi:

  • La première chose que vous faites après la connexion devrait être d'émettre un "Définir les noms UTF8" requête
  • Assurez-vous que les chaînes que vous stockez sont UTF-8 pour commencer: Si vous les prenez dans un formulaire de page Web, assurez-vous que la page est UTF-8
  • Faites attention aux outils que vous utilisez pour parcourir / modifier le contenu de la base de données en ligne: PHPMYSQLADMIN est définitivement dangereux.

J'espère que cela t'aides.

Autres conseils

Vous semblez essayer de stocker des chaînes codées HTML dans votre base de données. Ne faites pas cela, cela ne fera que défaire votre capacité à effectuer des opérations de chaîne comme la recherche de manière fiable. Vous devriez être en mesure de stocker des caractères codés UTF-8 RAW comme octets dans votre base de données.

Vous ne dites pas quel environnement vous utilisez pour lire la base de données ou comment vous obtenez la chaîne «incorrecte» en bas (qui est des octets UTF-8 lus en utilisant le codage ISO-8859-1). S'ils apparaissent dans votre page Web (et que vous spécifiez UTF-8 dans les en-têtes et / ou <meta> Tag), vous y êtes vraisemblablement.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top