我无法让带有重音符的角色在我的网站上正确显示。我的网站使用我转储到MySQL数据库的Excel文件中的数据。这个数据库中的表设置为utf8_general_ci,我脑子里有以下内容:
<meta charset="utf-8">
当我查看PHPMyAdmin中的数据时,一切看起来都很好,字符显示出来。但在我的网站上,ñ等字符在黑色钻石中显示为问号。
我真的不明白我做错了什么。有谁知道怎么了?
答案 0 :(得分:1)
默认情况下,Mysql以Latin 1返回
在连接后(在php中)尝试将值设置为utf8:
$db = mysql_connect(DB_HOST, DB_USER, DB_PASS);
mysql_select_db(DB_NAME);
mysql_set_charset('utf8', $db);
mysql_query("SET character_set_results = 'utf8', character_set_client = 'utf8', character_set_connection = 'utf8', character_set_database = 'utf8', character_set_server = 'utf8'");
显然,还要确保将文件声明为UTF8:
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
答案 1 :(得分:1)
想出来!我需要以UTF-8重新保存我的数据源文件(来自excel的制表符分隔文本文件)。一旦我这样做,我就能够重新加载数据并摆脱问题