西里尔文字显示为????在PHP中

西里尔文字显示为????在PHP中,php,utf-8,cyrillic,Php,Utf 8,Cyrillic,我正试图打印数据库中包含countrylist的值。该数据库中的一个字段是西里尔语。我的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 . "

我正试图打印数据库中包含countrylist的值。该数据库中的一个字段是西里尔语。我的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。。。以某种方式有人知道怎么做吗?
谢谢你抽出时间

连接到MySQL后,尝试使用
设置名称utf8

mysql_query("SET NAMES utf8");
或者,如果在数据库中使用cp1251,请设置此编码

正如政府所说:

SET NAMES指示客户端将使用哪个字符集发送SQL 向服务器发送的语句。。。它还指定服务器应该使用的字符集 用于将结果发送回客户端


顺便说一句,
strtolower
仅用于单字节字符。为什么不将do…while()更改为while(){}end以摆脱第一次fetch_array()调用?这很有帮助,谢谢“不建议使用mysql_query()设置它(例如设置名称utf8)”