-1

カントリーリストを含むデータベースから値を出力しようとしています。このデータベースのフィールドの 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 utf8MySQL に接続してから使用してみてください。

mysql_query("SET NAMES utf8");

または、データベースで cp1251 を使用している場合は、このエンコーディングを設定します。

マニュアルが言うように:

SET NAMES は、クライアントが SQL ステートメントをサーバーに送信するために使用する文字セットを示します...また、サーバーがクライアントに結果を返すために使用する文字セットも指定します。

于 2013-07-27T09:32:15.653 に答える