Ces points d'interrogation indiquent un octet non valide pour le codage de l'environnement, le résultat est affiché dans.
Ces jours-ci la plupart environnements seront utf-8.
Si votre exécution de l'application de la console mysql, exécutez la commande suivante lorsque vous connectez à dire au serveur MySQL pour retourner tous les résultats pour la connexion en cours en utf-8:
SET NAMES utf8;
En rails, Vous pouvez exécuter cette commande lorsque ActiveRecord ouvre une connexion db en ajoutant "encoding: utf8" à votre fichier database.yml. Vous devez également vous assurer que votre serveur Web (apahce/nginx/etc) envoie l'en-tête HTTP utf-8 et que vos fichiers HTML ont une méta-étiquette Content-Type.
Il est possible que vous ayez des octets corrompus stockés dans votre base de données et cela n'aidera pas. Si c'est le cas, vous êtes dans un monde de plaisir en essayant de le nettoyer :)
char encodage? UTF-8? –
Oui .. L'en-tête de contenu http spécifie UTF-8. Je me demande s'il existe un moyen de le contourner. Cet article (http://www.validome.org/lang/en/errors/HTML-CHARSET) indique que l'en-tête http a une priorité plus élevée. – Grnbeagle