所以我一直在使用mysql_real_escape_string将数据插入我的数据库......但是当我这样做时,它用符号“
”替换所有撇号所以不是显示它,而是显示它.......
当我从数据库读回来时,有没有办法将这些转换成撇号?
答案 0 :(得分:2)
这在某种程度上是一些字符编码问题。
因为在UTF-8中,’
(U + 2019)使用0xE28099进行编码。这表示Windows-1252中的字符â
(0xE2),€
(0x80)和™
(0x99)。
因此,您似乎忘记了specify your output character encoding properly,以便浏览器使用其默认字符编码Windows-1252。
答案 1 :(得分:1)
在PHP中将mysql_set_charset
应用于UTF-8。
答案 2 :(得分:0)
确保您的数据库和应用程序使用相同的字符编码。
在二进制文件中,'
的值与’
相同,因此您需要确保编码设置相同。
在PHP应用程序中,您可以使用以下两行指定它。
define(‘DB_CHARSET’, ‘utf8′);
define(‘DB_COLLATE’, ”);
这会将您的应用程序设置为使用UTF-8字符集,您必须确保该字符集与数据库的排序规则相匹配,然后您的问题就会消失。
您可以使用mysql_set_charset
函数以编程方式更改数据库字符集。