【訂正】Contactモジュールから送信されたメールの件名と差出人が文字化けする

(2011.7.19に訂正)
Contactモジュールから送信されたメールの件名と差出人が文字化けする件、いろいろとテストをしているうちに分かってきたのは以下の現象。

おきている現象
・IEで投稿すると件名と差出人が正常。
・ Firefoxで投稿すると件名と差出人が文字化け。
・GoogleChromeで投稿すると件名と差出人が文字化け。
・IEで再度投稿すと、ときどき文字化け。

サーバの条件
PHP5.1.6
mysql 5.0.22

おきている現象を見ていて、メーラーのせいではないですねー。ということで、いろいろと検索していたら以下のような投稿を発見しました。

XCL2.1.7から届くメールのsubjectが途中から文字化け

このページの対策で
html/language/(japanese|ja_utf8)/xoopsmailerlocal.php にある
$encoded = mb_encode_mimeheader($encoded, “ISO-2022-JP”, “B”, “\n”);

$encoded = mb_encode_mimeheader($encoded, “ISO-2022-JP”, “B”, “\r\n”);

に変更。で、文字化けがなくなりました。
php-5.1.6 のmail()関数が、\r\n でないダメという仕様に(本来ならそれが正しい?)なったからではないかということが書いてありました。

調べてみましたが、そのソースのようなものは見つけることができませんでしたが、\r\n でないダメということは肝に銘じておくことにします。

 

(以下、2011/7/15の投稿文章)
ご利用のメーラーは「OutlookExpress」。ちなみに、「Outlook」でテストすると文字化け再現せずに困っております。

とりあえず関連しそうなページをメモメモ。

 

OUTLOOKの件名欄が文字化けしてしまいます。
http://okwave.jp/qa/q71015.html

メール送信時のSubject文字化け
http://xoopscube.jp/forum/750

とりあえず、OutlookExpressの設定を見直して、再度テストする予定。
ページを忘れそうなので、メモしました。


コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です