SQLiteManager1.2.4をeuc-jpとutf-8で使えるようにする


ちょっとSQLiteに用があるので、phpMyAdminっぽいのをとSQLiteManagerを入れる。

まずはSQLiteManagerをダウンロード
http://www.sqlitemanager.org/
2010/5/1の時点では1.2.4が最新版でした。

(以前1.2.3を使った時はどうしてもデータベースの作成でエラーが出るので、1.2.0を使用したけど今回は大丈夫そう。)


デフォルトでは文字コードEUC-JPだそうなので、UTF-8も使えるように修正する。



■まずはutf-8用の設定ファイルを作成。

・langフォルダ内の「japanese.inc.php」を「japanese_utf8.inc.php」として別名保存。


・「japanese_utf8.inc.php」の10行目付近を修正
修正前)
$charset = 'euc-jp';
$langSuffix = 'ja-euc';

修正後)
$charset = 'utf-8';
$langSuffix = 'ja-utf-8';


・修正後utf-8形式で保存。(これを忘れて暫くハマッた)


これでutf-8用の設定ファイルが完成。



■メニューで選択できるように修正。

・includeフォルダ内の「define.php」の37〜41行目の部分に「14=>'japanese_utf8'」を追加。
この'japanese_utf8'の部分はさっき別名で保存した「japanse_utf8.inc.php」の'japanese_utf8'の部分と
同名にしないといけないみたい。

<?php
$availableLangue = array(	1=>'french', 2=>'english', 3=>'polish',
				4=>'german', 5=>'japanese', 6=>'italian',
				7=>'croatian', 8=>'brazilian_portuguese', 9=>'dutch',
				10=>'spanish', 11=>'danish', 12=>'traditional_chinese',
				13=>'simplified_chinese', 14=>'japanese_utf8');


・次にlangフォルダ内の「japanese.inc.php」と「japanese_utf8.inc.php」の両方を以下のように修正。
元々あった「5=>"日本語"」を「5=>"日本語(EUC-JP)"」に修正。
そして「14=>"日本語(UTF-8)"」を追加。

<?php
$langueTranslated = array(	1=>"フランス語", 2=>"英語", 3=>"ポーランド語", 
							4=>"ドイツ語", 5=>"日本語(EUC-JP)", 6=>"イタリア語", 
							7=>"クロアチア語", 8=>"ブラジル ポルトガル語", 9=>"オランダ語", 
							10=>"スペイン語", 11=>"Danish", 12=>"Chinese traditional", 
              				13=>"Chinese simplified", '14' => "日本語(UTF-8)");


これでEUC-JPとUTF-8のどちらかを選択できるようになる。


但し、始めに日本語以外の言語(デフォルトだと多分English)が選択されていると、japaneseしか選択できない。
一旦japaneseを選択すると日本語(EUC-JP)と日本語(UTF-8)を選べるようになります。

これが嫌な場合は全部のlangフォルダ内の***.inc.phpを全て修正するか
とりあえずenglish.inc.phpのみ下記のように修正すればいいと思います。

<?php
$langueTranslated = array(  1=>"French", 2=>"English", 3=>"Polish",
              				4=>"German", 5=>"Japanese(EUC-JP)", 6=>"Italian",
              				7=>"Croatian", 8=>"Brazilian portuguese", 9=>"Netherlands",
              				10=>"Spanish", 11=>"Danish", 12=>"Chinese traditional", 
              				13=>"Chinese simplified", 14=>"Japanese(UTF-8)");


今のところこれで問題なく動いているっぽい。


以下、参考にさせて頂いたサイト

時代工房の雑学部 : UTF-8 の DB で SQLiteManager を使う
UTF-8でSQLiteManagerを使う - よくきたblog