- - PR -
php MySQL phpMyAdmin の文字設定について
1
投稿者 | 投稿内容 | ||||
---|---|---|---|---|---|
|
投稿日時: 2004-11-12 10:38
テーブルにphpMyAdmin上からデータを挿入したところ、
phpMyAdmin上であれば、正常に表示されます。 しかしPHPでセレクト結果を表示したところ、 マルチバイト文字が文字化けします。 次にMySqlCommandLineClientよりデータを挿入し、 PHPでセレクト結果を表示すると文字化けはしません。 しかしphpMyAdmin上で参照すると文字化けしています。 PHPはシフトJISを基本に設定しています。 MySQLはsjisに設定してもPhpMyAdminのMySQLの文字セット項目ではUTF-8 Unicode (utf8)となっています。 マルチバイト文字の設定が根本的に分からず困っています。 PHP、mySQL、phpMyAdminを通しての文字設定の基本をお教えください。 また、そのようなことが説明してあるホームページがあればお教えください。 以上 よろしくお願いします。 環境 MySQL 4.1.7 PHP 5.02 phpMyAdmin 2.6.0 IIS 5.1 | ||||
|
投稿日時: 2004-11-12 20:59
PHPだけですが、 http://jp2.php.net/manual/ja/ref.mbstring.php が基本かと。 ・MySQLにどの文字エンコードで格納されているか? ・PHP内部で使われているエンコードは何か? ・Webページ出力時のエンコードは何か? を調べることが大事だと思います。 MySQLもphpMyAdminも日本語サイトがあったと思うので文字化け PHPなどで検索してみるのも良いでしょう | ||||
|
投稿日時: 2004-11-16 17:31
MySqlへの格納がおかしかったようです。
バージョンを4.0に下げてSJISを設定したところ、 文字化けが直りました。 ありがとうございました。 | ||||
|
投稿日時: 2005-12-21 04:10
引用:MySqlへの格納がおかしかったようです。
バージョンを4.0に下げてSJISを設定したところ、 文字化けが直りました。 僕も同じ問題に遭遇しました、いろいろ試したけど、 解決できませんでした。 もう少し詳しく説明してもらえませんか。 よろしくお願いします。 | ||||
|
投稿日時: 2005-12-21 10:26
オープンソース マガジン 2006/1 p68
MySQL 4.1 以降では、クライアント側とサーバー側のエンコーディング設定が 異なる場合にエンコーディング変換が行われます。この際、直接変換する のではなく、一度Unicode(ucs2)を経由します。・・・ クライアント側のエンコーディング指定 4.0 DBと一致しかできないから 不要 4.1 必要 5.0 my.cnf で ・・・ を指定すれば不要 ・・・ |
1