Movable Type で「~」が「?」に文字化けする事象や日本語のタグが合算できない不具合を解消する

Movable Type で「~」が「?」に文字化けする事象や日本語のタグが合算できない不具合を解消する

Posted at October 16,2009 1:55 AM
Tag:[MovableType, MySQL, phpMyAdmin, TroubleShooting]

Movable Type で MySQL 5を利用している際に、

  • ブログ本文などに含まれる「~」という文字などが「?」に文字化けする
  • 日本語のタグが合算できない(Aブログ記事とBブログ記事に同じ日本語のタグを付与した場合、タグ一覧などで2件とならず、それぞれ1件として表示される)

といった不具合を解消する方法を紹介します。

すでに多くのサイトで紹介されているので目新しい情報ではありませんがとりあえず。

1.原因

タイトルの不具合が生じる原因は、対象テーブルのカラムの照合順序が「ujis_japanese_ci」になっているためのようです。この照合順序を「utf8_general_ci」にすることで解消しているようです。

ちなみに、「照合順序」とはデータベースから select する際のルールを示すもののようで、

  • ujis/utf8:文字コード
  • japanese/general:照合形式
  • ci/cs:大文字・小文字を区別する・しない

という意味があります。

また、「大文字・小文字の区別」は英文字だけでなく、全角・半角や日本語の濁音・清音も含まれるようです(どのように区別されるかは、japanese/general の設定に依存)。

2.対策

以下、phpMyAdmin を使って「ujis_japanese_ci」を「utf8_general_ci」にする設定を紹介します。phpMyAdmin ログインした状態から説明します。

2.1 ブログ記事の文字化けを解消する場合

左メニューより mt_entry テーブルをクリック。

mt_entry テーブルをクリック

次の画面で「構造」のタブが選択されていることを確認し、mt_entry テーブルのフィールド一覧が表示されるので、一番下の「すべてチェックする」をクリック。これですべてのテーブルのチェックボックスがチェックされます。

「すべてチェックする」をクリック

「すべてチェックする」の右側にある鉛筆マークのアイコンをクリック。

アイコンをクリック

照合順序に「ujis_japanese_ci」が表示されているものについて「utf8_general_ci」に変更し、「保存」をクリック。照合順序が選択されていないものは変更しないでください。

照合順序を変更

以上です。なお、一度文字化けしてしまったものについては手作業で修正が必要なようです。

2.2 日本語の連結ができない不具合を解消する場合

mt_tag テーブルについて、2.1と同様の変更を行います。

照合順序を変更

こちらも、変更後に追加したタグについては合算されますが、既存のタグは合算されないようです。

2.3 その他

コメントの文字化けを変更する場合は mt_comment、トラックバックは mt_tbping / mt_trackback ですが、一通りやっておくとよいでしょう。

3.参考サイト

以下です。ありがとうございました。

2011.02.04
本文を一部修正しました。

関連記事
トラックバックURL


トラックバック

MTの文字化け問題 from SOH-WEB
 「~」が「?」になってしまう・・・。 その他にも表示できない文字が結... [続きを読む]

Tracked on February 9, 2010 2:18 AM

MT5バグ『タグが統合されない』 from 気ままなイラスト・WEBのサイト『蒼極の月』
MT5.01を使ってのサイト作成時、最後に気付いたバグ。タグが統合されない。具体的には↓の画像の状態になる。 もっと言えば統合だけじゃなくて、機能もして... [続きを読む]

Tracked on March 24, 2010 12:18 PM

エックスサーバでSQL4→5にしてMT4→5にしたけど文字化けした↓ from ブログ-箱庭.net
解決方法を探している方がこのページにヒットしたら、ごめん。 きっと文字コードがだ... [続きを読む]

Tracked on April 16, 2010 2:42 AM

ブログをリニューアルしました。[続報] from 日記
先日サーバー移転をしてMTのバージョンを最新版にしてリニューアルしたわけですけど、その後ちょいちょい困ったことがあったりしたので、備忘録がてら書いておきま... [続きを読む]

Tracked on May 16, 2010 12:50 AM

MT4文字化け from SIRA-KURA Blog
タグ欄の文字化けエラーで困ったので('∞';)文字化けの対処法を調べたら「小粋空... [続きを読む]

Tracked on October 11, 2010 12:44 PM

タグクラウド from 雑記帳
本文右側に表示されている『タグクラウド』にお気付きだろうか? ブログに添付する『タグ』を表示する機能で、出現頻度によって活字が大きくなったり強調文字として... [続きを読む]

Tracked on January 23, 2011 3:03 PM

MTOS(MT5)の一歩 #035 「~」の文字化けと、日本語のタグが合算できない不具合を解消 from 夜雨(yau) MT blog
ブログ記事を書いていて、 「~」が「?」へと文字化けする不具合を何度か経験していました。 それとは別に、 「タグラウド」ウィジェットで、同一の日本語のタ... [続きを読む]

Tracked on February 13, 2011 7:04 PM

ブログ作成でつまづいた問題と、その解決経緯[その1] from やる夫と学ぶ就職活動
初ブログ作成だけあって、今日に至るまで多くの技術的問題にぶち当たりました。 本記事は、どんな問題に直面したのか、どういう経緯でその問題を解決できたのかを... [続きを読む]

Tracked on July 26, 2011 9:59 AM

Movable Type で「~」が「?」に文字化けする from STAND-ALONE
タイトルの件、さくらインターネットでMT5.2を採用してから、ずっと困ってたんです。つまり、"~"が"?"に変わっちゃんですよ。 一時的な対処で、「〜」を... [続きを読む]

Tracked on January 29, 2013 7:03 PM
コメント

yujiroさん

いつもお世話になっております。
このトピックスとちょっと違う系統のご質問なのですが、お教えいただければ感謝です。
当方、小粋空間さんのテンプレートを気に入り、MTにてブログを立ち上げていたのですが、先ほどMT4.2環境で(さくらレンタルサーバー上)SQLのバージョンを4.1→5.1にアップしました。
DBはローカルにバックアップ、バージョンアップ後にDBを戻しています。

これにより、サーバーNameも変わったのですが、今まで作成したコンテンツは、htmlもphpnのコンテンツも見られます。

ただし、管理者モードでアクセスしようとすると、初期インストール後と同様の「初めてのブログを作る」「DBを初期化する」とのメッセージが出て、管理者登録を迫られてしまいます。(とすると、いまアップしている500のコンテンツが無に帰すということ(泣))

いくつかのサイトを事例に作業を進めたのですが・・・このような事例は無く、どのように対処すべきか、お手数ですがご教授いただけると助かります。

要はMTとDBが関連を持たず、再構築済みのスタティックコンテンツのみを見れているということ!?なんでしょうか。

MTの仲の、DBへのパスを書き換えれば???とは思うのですが、どこをリネームすればよいかわからずでして・・・。厚かましいお願いで恐縮ですが何卒よろしくお願いいたします。

K26


[1] Posted by K26 logo : January 8, 2010 5:31 PM

Yujiroさま

K26です。
上に記述した質問ですが、なんとか自己解決いたしました。

小粋空間内を探すと、数多くのFixのためのヒントがあり、それらが奏功しました。本当にすばらしいサイトだと思います。

ありがとうございました!

[2] Posted by K26 logo : January 12, 2010 6:41 PM

>K26さん
こんにちは。
ご返事遅くなってすいません&フォローできずに申し訳ありません。
ご質問の件、無事に直ってよかったです。
さしつかえなければ直した方法もご連絡いただければ幸いです。
それではよろしくお願い致します。

[3] Posted by yujiro logo : January 13, 2010 9:37 AM

この問題かなり長い間悩まされていたので、解決して目からうろこです。
情報ありがとうございました。

[4] Posted by はまちゅぅ : January 19, 2010 12:19 AM

>はまちゅぅさん
こんばんは。
ご連絡ありがとうございました。
お役に立ったようでなによりです。
ではでは!

[5] Posted by yujiro logo : January 19, 2010 1:56 AM

先日初めてMT5をインストールしたのですが、私もこの問題に悩まされ続けていました。
特にお客様がよく「~」を使う方だったので、MT4に戻したほうがいいのでは……と思っていたところ、こちらに辿りつく事が出来ました。
本当にありがとうございます!

今後もこちらのサイトを参考にさせて頂きます。

[6] Posted by 結季 : February 23, 2010 10:31 PM

タグが統合しなくてずっと苦労していました。
こんなにアッサリ治るとは・・・・目から鱗です。
これからも参考にさせて頂きます。

[7] Posted by ゴッツ : March 24, 2010 11:36 AM

>ゴッツさん
こんばんは。
お役に立てたようでよかったです。
ではでは!

[8] Posted by yujiro logo : March 26, 2010 8:55 PM

管理者様
はじめまして~。

”~”とか、”!”をBlogページに書き込もうとすると、
エラーになっていたので、ずーっと、使用しないようにしていたのですが、
このページに出会って、直すことができるんだ!
と非常に嬉しかったです。

で、早速、自身のMT5のBlogページにも適用しました。
※PHPMyAdminのインストールでハマりましたが・・・

本当に有難うございました!

私のBlogに、このページへのリンクを貼らせて頂きました。
事後報告で申し訳ありません。

[9] Posted by TET : October 22, 2010 3:48 PM

>TETさん
はじめまして。
記事がお役にたったようでなによりです。
リンクはご自由に貼っていただいて問題ありません。
それでは今後ともよろしくお願い致します。

[10] Posted by yujiro logo : October 23, 2010 2:00 AM

管理人様

このブログ記事で文字化けとタグクラウドの問題が解決しました。
また色々と参考にさせて頂きたく存じます。

ありがとうございました。

[11] Posted by YORO : January 23, 2011 3:00 PM

>YOROさん
こんばんは。
コメントありがとうございました。
お役に立てたようで良かったです。
ではでは!

[12] Posted by yujiro logo : January 23, 2011 9:16 PM

 yujiroさん、お久しぶりです。困った時のyujiroさん頼みでいつも申し訳ありません。私のブログもずっと、この「~」が「?」に化ける件で悩んでいました。このエントリーも参照させていただいたのですが、いつも途中で画面がyujiroさんのモノとは違ってしまうところで挫折していました。時間貧乏人の性で次の追われる仕事に頭と身体を運ばなくてはいけなくなって、途中で放り出すことが何度か。解決に至っていません。

 http://www.michiko-oota.com/mt/images/michiko-sql.jpg のような画面になり、2.1の4番目の画像の「照合順序」を選択する欄が出てこないのです。見てる場所が違うのでしょうか。

[13] Posted by Michiko : February 4, 2011 7:22 AM

 yujiroさん、度々ごめんなさい。見てる画面がやっぱり違っていました。「構造」のタグを開いたら、照合順序が出てきて、書かれてある通りの状態になっていました。
 mt-entry とmt-comment で「照合順序に「ujis_japanese_ci」が表示されているものについて「utf8_general_ci」に変更し、「保存」をクリック。」を実行したら、文字化けはしなくなりました。エントリーではまだ試していませんがコメントのテストでは文字化けが快勝したことを確認しました。
 有難うございました。

[14] Posted by Michiko : February 4, 2011 7:39 AM

>Michikoさん
ご無沙汰しています。
ご質問の件、自己解決されたようで良かったです。
「構造」のタブの説明は不足しておりましたので本文に追記させて頂きました(当方の環境ではデフォルトで「構造」タブが開くので気がついてませんでした、すいません)。
ではでは!

[15] Posted by yujiro logo : February 4, 2011 10:33 PM

こめんと

[16] Posted by test : July 5, 2011 3:29 PM
コメントする
greeting

*必須

*必須(非表示)


ご質問のコメントの回答については、内容あるいは多忙の場合、1週間以上かかる場合があります。また、すべてのご質問にはお答えできない可能性があります。予めご了承ください。

太字イタリックアンダーラインハイパーリンク引用
[サインインしない場合はここにCAPTCHAを表示します]

コメント投稿後にScript Errorや500エラーが表示された場合は、すぐに再送信せず、ブラウザの「戻る」ボタンで一旦エントリーのページに戻り(プレビュー画面で投稿した場合は、投稿内容をマウスコピーしてからエントリーのページに戻り)、ブラウザをリロードして投稿コメントが反映されていることを確認してください。

コメント欄に(X)HTMLタグやMTタグを記述される場合、「<」は「&lt;」、「>」は「&gt;」と入力してください。例えば「<$MTBlogURL$>」は「&lt;$MTBlogURL$&gt;」となります(全て半角文字)