-1

我正在尝试从包含国家/地区列表的数据库中打印值。该数据库中的字段之一是西里尔字母。我的 PHP 脚本如下所示:

include_once("db.php");

$query = mysql_query ("SELECT * FROM country");
$row = mysql_fetch_array($query);

do {
    $id = strtolower($row["id"]);
    $value = ($row["runame"]);
    echo $id . " " . $value . '<br/>';
} while ($row = mysql_fetch_array ($query));

此脚本的输出如下所示:

ad ???????
ae ???????????? ???????? ???????
af ??????????
ag ??????? ? ???????
ai ????????

所以,显然我需要为这个 PHP 脚本设置 UTF-8……不知何故……有人知道该怎么做吗?感谢您的时间!

4

1 回答 1

1

SET NAMES utf8连接 MySQL 后尝试使用:

mysql_query("SET NAMES utf8");

或者,如果您在数据库中使用 cp1251,请设置此编码。

正如手册所说:

SET NAMES 指示客户端将使用什么字符集将 SQL 语句发送到服务器......它还指定服务器应该使用的字符集将结果发送回客户端。

于 2013-07-27T09:32:15.653 回答