- PR -

php MySQL phpMyAdmin の文字設定について

1
投稿者投稿内容
常連さん
会議室デビュー日: 2004/05/19
投稿数: 22
投稿日時: 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
あつしfx
大ベテラン
会議室デビュー日: 2002/04/08
投稿数: 104
お住まい・勤務地: XPできるところ
投稿日時: 2004-11-12 20:59
引用:

鳥さんの書き込み (2004-11-12 10:38) より:
マルチバイト文字の設定が根本的に分からず困っています。
PHP、mySQL、phpMyAdminを通しての文字設定の基本をお教えください。
また、そのようなことが説明してあるホームページがあればお教えください。
以上 よろしくお願いします。

環境
MySQL 4.1.7
PHP 5.02
phpMyAdmin 2.6.0
IIS 5.1


PHPだけですが、 http://jp2.php.net/manual/ja/ref.mbstring.php が基本かと。
・MySQLにどの文字エンコードで格納されているか?
・PHP内部で使われているエンコードは何か?
・Webページ出力時のエンコードは何か?
を調べることが大事だと思います。
MySQLもphpMyAdminも日本語サイトがあったと思うので文字化け PHPなどで検索してみるのも良いでしょう



常連さん
会議室デビュー日: 2004/05/19
投稿数: 22
投稿日時: 2004-11-16 17:31
MySqlへの格納がおかしかったようです。
バージョンを4.0に下げてSJISを設定したところ、
文字化けが直りました。
ありがとうございました。
u
会議室デビュー日: 2005/12/21
投稿数: 1
投稿日時: 2005-12-21 04:10
引用:MySqlへの格納がおかしかったようです。
   バージョンを4.0に下げてSJISを設定したところ、   
   文字化けが直りました。

僕も同じ問題に遭遇しました、いろいろ試したけど、
解決できませんでした。
もう少し詳しく説明してもらえませんか。
よろしくお願いします。
MMX
ぬし
会議室デビュー日: 2001/10/26
投稿数: 861
投稿日時: 2005-12-21 10:26
オープンソース マガジン 2006/1 p68
MySQL 4.1 以降では、クライアント側とサーバー側のエンコーディング設定が
異なる場合にエンコーディング変換が行われます。この際、直接変換する
のではなく、一度Unicode(ucs2)を経由します。・・・

クライアント側のエンコーディング指定
4.0 DBと一致しかできないから 不要
4.1 必要
5.0 my.cnf で ・・・ を指定すれば不要 ・・・
1

スキルアップ/キャリアアップ(JOB@IT)