質問

次の文字を DB に挿入しています。 汉字 / 漢字

これは、文字を挿入しているページのメタ タグです。

<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />

文字を保持しているテーブル内のすべての列を次のように変更しました。 utf8_unicode_ci

外国文字は DB 内で次のように表示されます。 汉字 / 漢字

SQL ステートメントを使用してこれらの外国文字をページに表示すると、次のように再び正しく表示されます。 汉字 / 漢字

DB には正しく保存されていても正しく表示されないため、DB に正しくない設定があるのではないかと思います。

DB で外国語の文字を正しく表示するにはどうすればよいですか?

編集: これが私の挿入です:

$sql = 'INSERT INTO orders (foreign_characters)
        VALUES (?)';

$stmt = $conn->stmt_init();
$stmt->bind_param('s', $_SESSION['foreign_characters']);
$inserted = $stmt->execute();
役に立ちましたか?

解決

は、データベースへの接続であるにもUTF-8でエンコードされた?

このを試してみてください:MySQLデータベースに接続した後、右、次のクエリを実行します。

SET NAMES utf8;

これは(参照のMySQLのdoc )。 (ええ、あなたが接続し、この毎回行う必要があります。)

ところで:ちょうど適切なHTTPヘッダを送信する、<meta>タグに依存していません。

scroll top