質問 > フロント機能 > 商品購入完了時にメール配信されない(v2.0.1) |
フロント機能
フラット表示 | 前のトピック | 次のトピック |
投稿者 | スレッド |
---|---|
tao |
投稿日時: 2008/1/18 3:02
対応状況: −−−
|
一人前 登録日: 2007/12/28 居住地: 東京 投稿: 82 |
Re: 商品購入完了時にメール配信されない(v2.0.1) 私も始めてPHPからメールを送るときに少し苦労しました。
EC-CUBEでメールを送る際はPEARのMail.phpを使用しているのですが、このMail.phpではメールの送信プロセスでmail関数でsendmailを使用してメールを送っています。 このmail()には制限がいくつかあります。 詳しくはここを参照下さい。 また、通常のメールにはヘッダーにはASCII文字しか格納できません。 日本語を利用するためにはISO-2022-JPでエンコードして送っています。凄く簡単に言うと「基本的にメールはJISエンコード」と覚えていました。 今回の様にメールのヘッダにBCCなどを含める場合はこのmailに追加のヘッダ情報を渡す必要があったのですが、これもちゃんと日本語がエンコードされていて改行コードが入っていて70文字以上無い事が条件になってくると思います。(少し違っているかもしれませんが) メールに関しての細かい解説は他のサイトにいっぱいあるので詳細はそちらを参照して下さい。 結論から言うと日本語が入ったメールを送る際はmail()ではなくmb_send_mail()を使用した方が良いという事です。 私の場合はメール関連のトラブルはほとんどコレで解決しました。 なのでmail()をmb_send_mail()に変えてはどうでしょうか? |
フラット表示 | 前のトピック | 次のトピック |