|
はじめまして。囲碁好きなPerlプログラマーです。
sendmail でBCCにメールを送る場合、オプションに -t をつけるといいです。
ソースが全文出ていなかったので、どこにどのようにつければいいかアドバイスできないのですが、これがヒントになればよいと思います。
おそらく、$sendmail に '-t' が追記されるイメージで、さらに main::sendmail で6番目の引数からBCCが渡ってくるのを処理するコードを追記すればよいと思います。
【2008/07/03 10:56】
URL | junichiro #mQop/nM. [ 編集]
junichiroさん、アドバイスありがとうございます。
$sendmail = '/usr/sbin/sendmail';
を
$sendmail = '/usr/sbin/sendmail -t
とし
main::sdmail($sendmail,$M_to,$M_name,$M_from,$M_subject,$M_message,-t$M_bcc);
とすればよろしいのでしょうか。
【2008/07/03 11:13】
URL | 島谷 #9L.cY0cg [ 編集]
senmail.cgiのソース全文を本記事の追記に記載しました。
【2008/07/03 11:19】
URL | 島谷 #9L.cY0cg [ 編集]
ええ、方向性はあっています。
$sendmail = '/usr/sbin/sendmail';
$sendmail = '/usr/sbin/sendmail -t';
ここまではOK(かもしれません)。
「かもしれません」というのは、実は pack.pl の中身を見てみないことにはなんとも言えないからです。
pack.pl の中に sub sdmail { ... という部分があると思いますので、その中身をちょっと修正しなければなりません。そこだけでも掲載して頂ければ、アドバイスだけではなく、完全な修正方法も提示できると思います。
【2008/07/03 22:33】
URL | junichiro #mQop/nM. [ 編集]
junichiroさん、おはようございます。
アドバイスありがとうざいます。
pack.plが影響するとは全然知りませんでした。(ドシロウトのアホですね)
sub sdmail{ は複数行にわたっているので記事の追記のところに記入しました。
おんぶにだっこで恐縮ですがよろしくお願いします。
【2008/07/04 04:06】
URL | 島谷 #9L.cY0cg [ 編集]
$sendmail = '/usr/sbin/sendmail';
ここはもとのままで良かったです。
次にsdmailの中身を修正します。
■6行目
($sendmail,$to,$name,$from,$subject,$message) = @_ ;
↓
($sendmail,$to,$name,$from,$subject,$message,$bcc) = @_ ;
■26行目と27行目の間に下記の1行を挿入
print MAIL "Bcc: $bccn";
この時点で一度動くことを確認してください。(BCCにはまだメールが送られません)
この修正で、pack.pl の sdmail という関数が6番目の引数のBCCを解釈できるようになりました。
その後にsendmail.cgi に対して、最初に島谷さんがやった修正をしてみてください。
下記の部分と
$M_bcc = "$M_to,$M_from";
下記の部分ですね。
main::sdmail($sendmail,$M_to,$M_name,$M_from,$M_subject,$M_message,$M_bcc);
今手元に動作環境がないので、私の方で確認はできていませんが、これで動くようになると思います。
【2008/07/04 10:35】
URL | junichiro #mQop/nM. [ 編集]
junichiroさん、アドバイスありがとうざいます。
おかげさまでBCC送信ができるようになりました。♪└|∵|┐♪└|∵|┘♪┌|∵|┘♪
好奇心で$M_bcc="$M_to,$M_from";ではなく$M_bcc="$M_from"にして試したところサーバーエラーになりました。
スクリプトの挙動は私には不可解です。
お忙しいところをご丁寧に教えていただき心から感謝します。
これからもよろしくお願いいたします。
【2008/07/04 11:06】
URL | 島谷 #9L.cY0cg [ 編集]
おめでとうございます!
ただ、$M_bcc="$M_from";にしても動くはずなんですけどね。
セミコロンをつけ忘れてしまっていたりとか...
何はともあれ、いま動いているのであればそれで良いと思います。
【2008/07/07 10:52】
URL | junichiro #mQop/nM. [ 編集]
セミコロンはちゃんとつけたのです。コロンではありません。^^
アホな癖に好奇心だけは旺盛なので$_fromのところに直接アドレスを記入してもエラーになりました。私にとっては謎だらけです。
目的を達成できたので心から喜んでいます。
junichiroさん、本当にありがとうございました。
【2008/07/07 11:04】
URL | 島谷 #9L.cY0cg [ 編集]
|