Question

donc je l'ai utilisé mysql_real_escape_string pour insérer des données dans ma base de données ... mais quand je le fais qu'il remplace tous avec le symbole apostrophes â € ™

au lieu de l'écran il est, il est l'affichage câ € ™ .......

est-il possible de reconvertir les â € ™ est en apostrophes quand j'ai lu retour de la base de données?

Était-ce utile?

La solution

Ceci est un codage de caractères problème d'une certaine façon.

Parce que dans UTF-8, (U + 2019) est codé avec 0xE28099. Et qui représente les caractères â (0xE2), (0x80) et (0x99) Windows- 1252 .

Il semble donc que vous avez juste oublié de préciser votre personnage de sortie coder correctement de telle sorte que le navigateur utilise son caractère par défaut encodage Windows 1252 à la place.

Autres conseils

mysql_set_charset UTF-8 dans votre PHP.

Assurez-vous que la base de données et de l'application utilisent le même codage de caractères.

En binaire, ' est identique en valeur à ’, vous devez vous assurer le encoding est le même.

Dans votre application PHP, vous pouvez spécifier les deux lignes suivantes.

define(‘DB_CHARSET’, ‘utf8′);
define(‘DB_COLLATE’, ”);

Cela permet de régler l'application à utiliser le jeu de caractères UTF-8, vous devez vous assurer de la collation correspond à la base de données, votre problème disparaîtra.

Vous pouvez changer le jeu programatically de caractères de base de données avec la fonction mysql_set_charset.

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