我在我的数据库中得到了这种结果 ’
每次我输入这个字符 ’
我已经使用mysql_query('SET CHARACTER SET utf8');
从我的数据库获取数据时。
我已经有 <html><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />.....
这个在我的 HTML 上。
这里还缺少什么?我们将非常感谢您的帮助并给予奖励!
谢谢!
最佳答案
我注意到您正在运行此查询... mysql_query('SET CHARACTER SET utf8');
尝试将其更改为这个...
mysql_query("SET NAMES 'utf8'");
这应该确保连接是 UTF-8。
另请尝试浏览本文中的项目列表... http://blog.loftdigital.com/blog/php-utf-8-cheatsheet
这里列出了确保您在站点/应用程序中从前到后使用 UTF-8 所需的步骤,但总结如下:
- 检查您是否有 PHP 的 mbstring 扩展以及
mb_internal_encoding('UTF-8');
在您的脚本中设置。 - 确保在连接到数据库后运行此 MySQL 查询
mysql_query("SET NAMES 'utf8'");
这确保连接是 UTF-8。 - 设置输出的 HTTP header ...
header('Content-type: text/html; charset=UTF-8');
。如果您设置了mb_internal_encoding()
,这似乎不需要上面但是对于调试很有用 - 确保您的 HTML 页面的输出编码已设置...
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
关于php - 在mysql数据库中获取值时出现奇怪的字符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11484706/