MySQL 4.1.x な環境で phpMyAdmin を EUC-JP で使う方法
MySQL 4.1.x から文字コード関係のトラブルが多いみたい.
phpMyAdmin を使ってみたら,EUC-JP に設定して,phpMyAdmin の言語を「日本語 - Japanese (euc)」にしても,
画面は文字化けするし,「MySQL の文字セット」も UTF-8 Unicode (utf8) のままで,データの挿入などが行えない.
そこで,ちょっと強引に,phpMyAdmin のファイルを書き換えることにする.
- phpMyAdmin/libraries/database_interface.lib.php
function PMA_DBI_postConnect($link, $is_controluser = false)
:
/*
if (PMA_MYSQL_INT_VERSION >= 40100) {
:
} else {
require_once('./libraries/charset_conversion.lib.php');
}
*/
require_once('./libraries/charset_conversion.lib.php');
}
MySQL 4.1 の if 文をごっそりコメントアウトして,./libraries/charset_conversion.lib.php を強制的に読み込ませるようにする.
phpMyAdmin の言語を「日本語 - Japanese (euc)」にすると「MySQL の文字セット」が「 EUC-JP Japanese (ujis)」になって,
データの挿入も問題なく行えるようになった.
ちなみに,config.inc.php の言語関係の設定は以下のようにした.
$cfg['DefaultLang'] = 'ja-euc';
$cfg['DefaultConnectionCollation'] = 'ujis_japanese_ci';
$cfg['DefaultCharset'] = 'ja-euc';
なお,phpMyAdmin 2.8.0 から設定ファイルの雛形の場所が変更された.
phpMyAdmin/libraries/config.default.php にあるので,これを phpMyAdmin/config.inc.php にコピーして使うことになる.
こうすることで,phpMyAdmin 2.8.0 から新しく導入された (分かりにくい) setup.php を使わないで設定ができる.
- 追記
$cfg['Lang'] = 'ja';
を指定すれば,行けるらしいという情報を頂いたが,Notice が発生してだめですね.
Notice: Undefined index: ja-euc
ja-euc にしても同じ結果に.
スマートな方法はないものでしょうか.
- 解決
[2006-06-26-2] 続・MySQL 4.1.x な環境で phpMyAdmin を EUC-JP で使う方法
関連記事:
[2006-06-26-2] 続・MySQL 4.1.x な環境で phpMyAdmin を EUC-JP で使う方法