3

現在、自分で解決できない文字セットの問題がいくつかあります。私の問題は、いくつかの特殊文字を使用すると、「�」が表示されることです。

これはデータベース コンテンツにのみ適用されるため、ビュー ファイルに直接書き込まれたコンテンツは正しく表示されますが、データベースからのものである場合、上記の問題が発生します。

私が何を探すべきか知っている人はいますか?現時点では、私自身にはこれ以上のアイデアはありません。

ソリューション

PDO への接続回線を次のように変更します。

self::$_db = new PDO(self::$DB_type .':host='. self::$DB_hostname .';dbname='. self::$DB_database, self::$DB_username, self::$DB_pass );

文字セットを追加するだけで、接続行は次のようになります。

$options = array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8');
self::$_db = new PDO(self::$DB_type .':host='. self::$DB_hostname .';dbname='. self::$DB_database, self::$DB_username, self::$DB_pass, $options );

前もって感謝します!

4

1 に答える 1

1

データベースのエンコーディングを UTF-8 に設定し、html コードで同じことを行い、php ファイルを UTF-8 として保存してみてください。

HTML の head タグ内に次の行を追加します。

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

データベースは utf8_general_ci である必要があり、php ファイルの場合は notepad++ などのエディターをダウンロードし、メニューのエンコーディングから BOOM なしの UTF_8 を選択します。

于 2012-09-22T00:19:18.020 に答える