ウェブ、ショウジン

EC-CUBEの韓国語対応-DBの文字コードをutf8に変更

2011-2-3
Category
CMS

さくらにおけるMySQLの文字コードは日本語ujis。
このままでは韓国語は表示できない。(化ける)

MySQLの管理ツールであるphpmyadminを使い、文字コードの照合順序の指定を既存のujis_japanese_ciからすべてutf8_general_ciにしてやる必要がある。(別にphpmyadminでなくてもいいんだろうけど、コマンドラインでやるのはシンドいと思ったので)

注意するのは、各テーブルだけでなく各テーブルに含まれるフィールド(カラム)にも同様の変更をしてやること。phpmyadminの操作に慣れない最初のうち、ビールを呑みながら適当にやってたら、これがちゃんと出来ずに漏れが多々あったようで各所で不具合が生じた。

フィールドには文字コードを指定していないものもあるけれど、指定されている(ujis_japanese_ci)ものはすべてutf8_general_ciにする必要がある。

これがきっちり出来ていないと、たとえば名前や住所にハングルを入力して登録することができても、会員登録完了後の遷移がエラーになったり(会員データは登録される)ハングルで登録されている会員アカウントではログインできない等の不具合が発生する。

一括でまとめて処理とか、もっと便利な方法がありそうだけど、今回はそれを調べる時間よりもまずは手を動かしてさっさと済ませるということで、大変面倒ではあったけど、ひとつひとつ手作業で(phpmyadminで)やった。

これで韓国語(ハングル)をユーザーデータとして登録出来るようになったし、ハングルをページ上で表示することも出来るようになった。

以下の画面キャプチャは、phpmyadminで該当DBの各テーブルとフィールドに対して前述の変更処理を行った際のもの。自分メモなので他の人が見てもわかりにくいかもしれないけど、ま、覚え書きのおまけということで。(例はmtb_prefというテーブルとその中に格納されているフィールド)

テーブルの文字コード照合順序を変更

フィールドの文字コード照合順序を変更

Categories

Tag Cloud

AdMob Android Apache centos CodeIgniter EC-CUBE facebookアプリ facebookページ feed Firefox Flash google googleanalytics htaccess iPad iPhone JavaScript lamp mobile nginx ogp pear php plugin rollover rss sendmail setting smarty ssh Titanium Mobile Titanium Studio tutorial ubuntu vim VirtualBox vmware vps Windows WordPress xampp youtube さくらインターネット アクセス解析 カスタム投稿