2006年03月27日

MX Kollectionで日本語メール その2 @ Mac

1月にもMX Kollectionで日本語メールを送信する場合のメモを書きましたが、その時はサーバービヘイビアを極力改造しない使い方でした。それでもその時は良かったのですが、ちょっと都合が悪い状況が生じたので、サーバービヘイビアのライブラリ書き換えを行いました。

書き換えるファイルは
includes/tng/triggers/tNG_Email.class.php
です。

本文が関わる部分はfunction getTextBody()とfunction getHtmlBody()です。returnの前に次の行をそれぞれ挿入します。

$content = mb_convert_encoding($content, "SJIS", "EUC-JP");

$text = mb_convert_encoding($text, "SJIS", "EUC-JP");

データベースをEUCで使っている場合なので、それぞれ環境に合わせて下さい。

この他にメールの表題で日本語を使いたい場合は、function getSubject()を以下のよう書き換えます。

function getSubject()
{
$subject = KT_DynamicData($this->subject, $this->getTng(), $this->escapeMethod, $this->getUseSavedData(), array('KT_defaultSender'=>$GLOBALS['tNG_email_defaultFrom']));
$subject = "=?ISO-2022-JP?B?".base64_encode( mb_convert_encoding( $subject, 'JIS', 'EUC-JP' ) )."?=";
return $subject;
}

これもEUCを使っている場合の例です。それから、メール送信トリガー(Trigger_SendEmail)部分のエンコーディングをシフトJISとした場合です。サーバービヘイビアのダイアログを開いて設定は出来ないので、ソースを開いて以下のように修正します。

$emailObj->setEncoding("Shift_JIS");

2008年2月4日追記:
Adobe Dreamweaver Developer Toolboxでも同様の方法でローカライズが可能です。ただ、本文をシフトJISにしているので、古いメール環境では文字化けするかもしれません。

閲覧数: 2871 / はてなブックマークusers

blog comments powered by Disqus

関連日記

アマゾン広告

この日記ページは閲覧数などの条件に応じて、閲覧制限を行っています。他からリンクしていただいても、そのリンクから辿った閲覧者が当ページの内容をご覧頂けない場合があります。ご了承下さい。

▼日記検索

Mac

Shade

3D

Flash

ゲーム

ウェブ

音楽

映画

デジカメ

Windows

Linux

携帯電話

テレビ

広島

電子工作

iOS

▼ 最近のトラックバック

▼ランキング

▼関連サイト