▼ 個別アドレス分離機能(一斉送信時)
個別アドレス分離機能(一斉送信時)
to,cc,bccに複数のアドレスを設定し、一斉配信をしても、To(宛先)1件ごとに分離し、改めてtoヘッダには、1件だけのメールアドレスを設定して送信する機能です。例
$mail = & new Qdmail() ; *1通常であれば、toヘッダに複数人のヘッダーが表示されてしまいますが、このtoSeparate(個別アドレス分離)機能を使用すると、一斉送信にもかかわらず、個別に送信しているようにみえるのです。
$to = array( 'address1@example.com' , 'address2@example.com' , 'address3@example.com' , 'address4@example.com' );
$mail -> to( $to );
$mail -> subject( '個別アドレス分離機能テスト' );
$mail -> from('from@example.com','配信元表記');
$mail ->text( 'このメールは1通ずつ配信されています' );
$mail -> toSeparate( true );
$mail ->send();
一斉送信時に他のアドレスが見えないようにするには、bccを使用する手段もありますが、その場合、別途toヘッダの指定が必要になってしまいます。このtoSeparate機能は、そうしたわずらわしさをなくすことができます。
また、シンプルテンプレート(差し込み送信)機能と組み合わせると、宛先に応じてメッセージ内容を変更することも可能になります。
注意
個別アドレス分離機能をONにした場合、cc,bccにセットしたメールアドレスは無視されます。
*1 : PHP5の場合は、newの前の&は必要ありません。
- TB-URL http://hal456.net/qdmail/018/tb/
-
▼
[CakePHP] Qdmail でメールの一斉送信
Sun Limited Mt.CakePHP のコンポーネントの Qdmail はメールを送るのに非常に便利なコンポーネントです。この Qdmail を使用してメールを一斉送信する方法です。本家の方に複数の宛先宛に個別にメールを送る方法が紹介されています。個別アドレス分離機能(一斉送信...
# sage 2009年03月21日(土) 午後3時08分
この機能を利用しようとするとaddress1にaddress2の差し出し人名でメールが届いてしまうのですが…
# naco 2009年03月22日(日) 深夜3時08分
差出人名ではなく、宛先(受取人)の表示名(日本語OK)ではないですか?
To: address2@example.com<address1@example.com>
http://hal456.net/qdmail/oopbase
上記ページにある複数宛先の指定方法で試してみてください。
その1とその2は大丈夫でした。(その3は試していません。)
※以下の書き方でも大丈夫です。(その2をまとめて書く形式)
$to = array(array('address1@example.com','表示名1'),array( 'address2@example.com','表示名2'));
$mail -> to( $to );
メールアドレスの指定方法は、easyモードと共通なのかもしれません。
http://hal456.net/qdmail/easytext_ver1
# naco 2009年03月22日(日) 深夜3時10分
管理人様
もしかしてサーバーの日付が1日ずれていないでしょうか?
P.S.
Qdmail非常に便利です。
ありがとうございます。
# yu-ri 2009年09月16日(水) 午後5時45分
大変有用なライブラリをご提供いただき、有難うございます。
早速ですが、記事において、
「一斉送信にもかかわらず、個別に送信しているようにみえる」
とありますが、同時に
「一斉配信をしても、To(宛先)1件ごとに分離し、改めてtoヘッダには、1件だけのメールアドレスを設定して送信する」
ともあります。
toSeparate機能は、結果として一斉配信をしているのか、アドレスごとに切り分けて個別配信をしているのか、どちらなのでしょうか。
個別配信ですと、サーバの関係上スパム扱いされる恐れがありますので、この機能が使えないのです。
ソースを読ませていただきましたが、PHPをいじって数ヶ月ゆえ、判断が付きませんでした。
単純なことかもしれませんが、ご教示いただければ幸いと存じます。
# sat 2010年07月14日(水) 午前10時40分
今回、Qdmailを利用させて頂いております。
メール本文の文字コードをUTF-8で一斉配信を行いたいのですが、
$mail -> toSeparate( true );
を指定すると、文字コードの指定が解除されてしまい、
デフォルトのISO-2022-JPにて送信されてしまいます。
もちろん、下記の1行は記載しております。
$mail -> charset('UTF-8', 'base64');
ご存知の方がいらっしゃいましたら、ご回答頂ければ幸いです。
# 1111 2012年03月15日(木) 午後5時15分
個人情報に関わることですので、訂正箇所を明確にご提示ください。