问题,简单而烦人。
我只是想打印从我的 mysql 数据库中收集的姓名列表。
PHP 文件以utf8 格式保存,数据库和表设置为使用utf8。例如,仍然是 'å,ä,ö',输出为 �。不敢相信我仍然遇到这个问题。
当然,Latin1 解决了这个问题。问题是我必须使用 utf8,因为我正在执行一些 json_encode 以将数据发送到 ajax 脚本。
知道到底哪里出了问题吗?
我应该在返回数据之前将数据转换为 utf8 格式吗?看起来很奇怪,我应该……
最佳答案
将 utf8_general_ci
转换为 utf8_unicode_ci
...
尝试在连接到数据库后运行 SET NAMES UTF8
查询...
function connect($server, $database, $username, $password, $charset = "UTF8"){
$link = mysql_connect($server, $database, $password);
if(!$link){
die("Unable to connect to database server.");
}
mysql_selectdb($database);
if(function_exists("mysql_set_charset")){
mysql_set_charset($charset, $link);
}else{
mysql_query("SET NAMES $charset");
}
}
还要确保你的 HTML 中有这个(或通过 header())...
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
关于php - 在使用 Php、Mysql 和 UTF8 时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6044030/