KENT-WEB サポートコーナー 過去ログ [ 0438 ]


記事No: 4172
投稿日: 2008/07/20(Sun) 21:24:49
タイトルclipmailで返信メールの差出人欄を会社名に変更したい
ID情報: smilly
投稿者: smilly
URLhttp://www.nj-club.net/contact/fm01/

立て続けの質問で申しわけありません。

clipmailを設置しました。
現状では、投稿してもらったお客様に返信されるメールの「送信者(差出人)」の欄には
管理者側に送られるメールアドレス(info@aaaa.net)が表記されますが、これを会社名に変更できないでしょうか。

単純にinit.cgiを

# 送信先メールアドレス
$mailto = 管理者会社名<info@aaaa.net>';

と変更したところ、文字化けを起こしてしまいました。
どなたか、ご教授いただければ幸いです。
よろしくお願いします。


記事No: 4174
投稿日: 2008/07/20(Sun) 23:56:32
タイトルRe: clipmailで返信メールの差出人欄を会社名に変更したい
ID情報: hirayama
投稿者: hirayama
URLhttp://www2u.biglobe.ne.jp/~k_hiray/sts/fsw/wiki.cgi

MIMEエンコードが必要なのですが、いずれにしてもinit.cgiでエンコードするのはまずいです。
$mailto = 'info@aaaa.net';
に戻した上で、
$mailtoname = '管理者会社名';
を追加し、

sendmail.plの送信部分

# 返信送信
if ($auto_res) {
open(MAIL,"| $sendmail -f $mailto -t -i") || &error("メール送信失敗");
print MAIL "$res_body\n";
close(MAIL);
}



# 返信送信
if ($auto_res) {
open(MAIL,"| $sendmail -f $mailto F $mailtoname -t -i") || &error("メール送信失敗");
print MAIL "$res_body\n";
close(MAIL);
}

としてみるとどうでしょう。
これでだめなら、sendmail.plの

# メールアドレスがない場合は送信先に置き換え
my $email;
if ($in{'email'} eq "") {
$email = $mailto;
} else {
$email = $in{'email'};
}



# メールアドレスがない場合は送信先に置き換え
my $email;
if ($in{'email'} eq "") {
$email = &mimeencode("\"$mailtoname\" <$mailto>");
} else {
$email = $in{'email'};
}


記事No: 4179
投稿日: 2008/07/21(Mon) 14:41:53
タイトルRe^2: clipmailで返信メールの差出人欄を会社名に
ID情報: smilly
投稿者: smilly
URLhttp://www.nj-club.net/contact/fm01/

hirayama さま

重ねてアドバイスありがとうございます。

ご指示の変更を加え試しているのですが、現状では反映されません。
合わせて、そん他のアヤシイ箇所も変更しながらテストしています。
もう少し、頑張ってみます。


記事No: 4182
投稿日: 2008/07/22(Tue) 13:00:06
タイトルRe^3: clipmailで返信メールの差出人欄を会社名に
ID情報: hirayama
投稿者: hirayama

すみません。いろいろ間違ったことを書いていたようです。
すでに自己解決されているかもしれませんが、
修正しておきます。
init.cgiの修正はいいとして

返信部分の修正は
open(MAIL,"| $sendmail -f $mailto F $mailtoname -t -i") || &error("メール送信失敗");
ではなく、
open(MAIL,"| $sendmail -f $mailto -F $mailtoname -t -i") || &error("メール送信失敗");
です。-が抜けてました。

それと、投稿者への返信の送信元は$mailtoになっているので、
ここを修正しないと反映されないようです。$mailtoそのものを書き換えると、まずいので
以下の部分を

# 返信内容フォーマット
my $res_body;
if ($auto_res) {
$res_body .= "To: $email\n";
$res_body .= "From: $mailto\n";

次のように変更してみてはどうでしょう。

if ($in{'email'} ne "") {
$email2 = $in{'email'};
if ($in{'name'}) {
$email2 = &mimeencode("\"$in{'name'}様\" <$email2>");
}
} else {
$email2 = $email;
}
if ($mailtoname) {
$mailto2 = &mimeencode("\"$mailtoname\" <$mailto>");
} else {
$mailto2 = $mailto;
}

# 返信内容フォーマット
my $res_body;
if ($auto_res) {
$res_body .= "To: $email2\n";
$res_body .= "From: $mailto2\n";


記事No: 4184
投稿日: 2008/07/22(Tue) 13:54:59
タイトルRe^4: clipmailで返信メールの差出人欄を会社名に
ID情報: smilly
投稿者: smilly
URLhttp://www.nj-club.net/contact/fm01/

> すみません。いろいろ間違ったことを書いていたようです。
> すでに自己解決されているかもしれませんが、
> 修正しておきます。
> init.cgiの修正はいいとして
>
> 返信部分の修正は
> open(MAIL,"| $sendmail -f $mailto F $mailtoname -t -i") || &error("メール送信失敗");
> ではなく、
> open(MAIL,"| $sendmail -f $mailto -F $mailtoname -t -i") || &error("メール送信失敗");
> です。-が抜けてました。
>
> それと、投稿者への返信の送信元は$mailtoになっているので、
> ここを修正しないと反映されないようです。$mailtoそのものを書き換えると、まずいので
> 以下の部分を
>
> # 返信内容フォーマット
> my $res_body;
> if ($auto_res) {
> $res_body .= "To: $email\n";
> $res_body .= "From: $mailto\n";
>
> 次のように変更してみてはどうでしょう。
>
> if ($in{'email'} ne "") {
> $email2 = $in{'email'};
> if ($in{'name'}) {
> $email2 = &mimeencode("\"$in{'name'}様\" <$email2>");
> }
> } else {
> $email2 = $email;
> }
> if ($mailtoname) {
> $mailto2 = &mimeencode("\"$mailtoname\" <$mailto>");
> } else {
> $mailto2 = $mailto;
> }
>
> # 返信内容フォーマット
> my $res_body;
> if ($auto_res) {
> $res_body .= "To: $email2\n";
> $res_body .= "From: $mailto2\n";


記事No: 4185
投稿日: 2008/07/22(Tue) 13:58:38
タイトルRe^4: clipmailで返信メールの差出人欄を会社名に
ID情報: smilly
投稿者: smilly
URLhttp://www.nj-club.net/contact/fm01/

hirayama さま

やりました! パーフェクトです。
自己解決できなくて、あきらめかけてました。
 
本当にありがとうございました。
並びに、この場を提供していただいた、KENTさまにもお礼申し上げます。

※一つ前の返信に内容を書かずに送ってしまいました。
失礼しました。


[検索ページ]