みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

phpMyAdminでエクスポートすると、~やcmなどが文字化けします。

phpMyAdminでMySQLのテーブルを
CSVファイル形式でエクスポートして
テキストエディタ(UnEditor)で開いたところ、
「shift-jis変換できない文字を含んでいます。
 ?に変換します」
となりました。
?に変換された文字は、~やcm(全角1文字でcm)などです。
どのようにしたら、文字化けしないで
エクスポートできるようになるのでしょうか?

各テーブル、フィールドの照合順序はすべて
utf8_general_ci
に変更しましたが、
状況はかわりませんでした。
(変更前は、ujis_japanese_ciでした)
レンタルサーバの為か、
my.cnfファイルは見つかりません。

ご存知の方がいましたら、教えていただけると、
助かります。m(_ _)m

レンタルサーバー:さくら
PHP 5.2.x
PHP の文字セット:EUC-JP
MySQL 5.1
MySQL の文字セット: UTF-8 Unicode (utf8)
phpMyAdmin 3.1.3.1
windows XP

投稿日時 - 2009-10-20 18:22:20

QNo.5382675

困ってます

質問者が選んだベストアンサー

今ダウンロードしてインストールしてみた UnEditor(r.1.8.1 Build 1,鬼車onig.dll ver5.9.1) で、phpMyAdmin でエクスポートしたファイル(cm、~を含む)を開いても、そのようなメッセージは表示されませんでした。
私の環境では、エクスポートされるファイルは UTF-8 なのですが、別のエディタで文字コードを EUC-JP に変えておいて、それを開いてもそのようなメッセージは表示されませんでした。
バージョン違いのせいかも知れませんので、新しいバージョンか違うバージョンで試してみてください。

とは言っても、PHP や MySQL の文字コードが関係で、エクスポートした時点ですでに文字化けが起こっているのかも知れません。
データが入っているデータベースの照合順序やテーブルの照合順序を後から変更しても、すでにあるデータには反映されません。
私も phpMyAdmin のエクスポートがうまくできなかったので、結局、PHPでプログラムを作って、CSV ファイルを出力するようにしました。
それからはデータベースを UTF-8 の照合順序で作成して UTF-8 しか使わないようにしました。
※色々と自分なりに試した結果(どうしたらいいのかわからないまま)、UTF-8 でないと文字化けが起こったので。
エクスポートで文字化けする以前に、phpMyAdmin でテーブルの中を見たらすでに文字化けしていました。
※PHP からのアクセスでは文字化けしていないので、phpMyAdmin での見え方は無視していました。
※UTF-8 にしてからは、phpMyAdmin でも文字化けせずに表示されました、が PHP の方のプログラムを色々と直す必要はありましたし、HTML も UTF-8 にしたために、ブラウザで見るフォントがかわってデザインが狂ってしまったので、おすすめできる手段ではないかも知れません。

完全にうまくするには、サーバーの設定から、PHP の設定から、MySQL の設定から、などなど根っこからを設定していないとだめなのかも知れません。
レンタルサーバー「さくら」の事は詳しくないのでわかりませんが、どうにかして今あるデータを文字化けしないように抜いて、PHP、MySQLの文字コードを統一した環境に作り直した方が無難ではないでしょうか。

どうにかして抜く、と言うのは、私の場合、プログラムを作った方が早かったわけですが、そんなに難しいものではありませんし、今後のエクスポートもそれを流用すれば phpMyAdmin を介さずに済みます。

投稿日時 - 2009-10-21 10:23:14

お礼

とてもわかりやすく具体的で丁寧に教えていただき
ありがとうございました。
また、わざわざ UnEditorをダウンロード、インストールして
調べていただきありがとうございました。

おかげさまで、解決しました!

「データが入っているデータベースの照合順序やテーブルの照合順序を後から変更しても、すでにあるデータには反映されません。」
とのことだったので、テーブルから全データを削除してから、
元データをインポート→エクスポート→UnEditorで開いたところ、
~やcm(全角1文字でcm)が文字化けしませんでした!

本当にありがとうございました。
助かりました。m(_ _)m

投稿日時 - 2009-10-29 14:21:58

ANo.1

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(1)

あなたにオススメの質問