cakephperの日記(CakePHP, Laravel, PHP) Twitter


継続的WebセキュリティテストサービスVAddyを始めました!

2008-12-27

Qdmailで件名がうまく表示できなかった件

CakePHP 1.2 RC3を利用しています。

CakePHP 1.2 Finalが出たのでそろそろ乗り換えないと。。。


CakePHPでの開発時、コンソール処理も含めてメール送信はQdmailを使わせてもらってます。日本語メールでCakeから安心して使えるコンポーネントなので、助かってます。ありがとうございます。

http://hal456.net/qdmail/

今回、Qdmail 1.2.6とCakePHP1.2 RC3とpostfix-2.3.3-2.1.el5_2 on Redhat Linuxの環境で、日本語メールを送信してました。ほとんどのクライアントでは問題なかったのですが、Becky2.42のある人の環境のみ、なぜか日本語の件名が16文字目で切れてしまい、Base64エンコード文字列が件名に混ざってしまいました。ほかのバージョンのBeckyでは発生しませんでした。

色々と試した結果、下記の1文を追加したら直りました。

$this->Qdmail->lineFeed("\n");

ということで、これからは下記のようにメールを送信するステップを踏むようにしようと思います。

$this->set('data', $result['Model']);
$content = $this->render('mailsendaciton', null , null);
$this->output = '';

//半角カナを全角に変換(文字化け対策)
mb_internal_encoding("UTF-8");
$content = mb_convert_kana( $content, "K");

mb_language('ja');
$this->Qdmail->lineFeed("\n");


$this->Qdmail->to( MAIL_TO );
$this->Qdmail->from( MAIL_FROM , MAIL_FROM_NAME );
$this->Qdmail->subject( REMINDER_MAIL_SUBJECT );

$this->Qdmail -> text( $content );
$this->Qdmail -> send();

スパム対策のためのダミーです。もし見えても何も入力しないでください
ゲスト


画像認証

トラックバック - http://d.hatena.ne.jp/cakephper/20081227/1230350328