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


記事No: 14650
投稿日: 2016/02/05(Fri) 12:01:19
タイトルCaptchaMail 自動返信内容カスタマイズ2
ID情報: ayusugar
投稿者: ayucharion
URLhttp://www.sugio.info/fs/captmail2/captmail.cgi



初めまして。
先日から使わせていただいており、Perl初心者の為、
過去ログを見ても解決できないので、タイトルに2を付け投稿させていただきました。

http://www.kent-web.com/support/oldlog/0005/0013.html
↑こちらを参考にさせて頂いたところ、「お問い合わせフォームより送信がありました。」
のメールの差出人は、○○○○様となりました。

しかし、自動返信メールの名前部分は以下の通りとなってしまいます。

------
e4bd90e897a4 <<○○○○様となりません。

このメールは自動送信でお送りしています。

お問い合わせありがとうございました。

早急にご返信致しますので今しばらくお待ちください。

------


ちなみに現在編集済みのところは、

reply.txtが以下、

------
!name!

このメールは自動送信でお送りしています。

お問い合わせありがとうございました。

早急にご返信致しますので今しばらくお待ちください。

送信内容は以下になります。
------------------------------------------------------------

【送信日時】
!date!
------------------------------------------------------------

【送信内容】
!message!

------

reply.txtが下記、

------
!name!

このメールは自動送信でお送りしています。

お問い合わせありがとうございました。

早急にご返信致しますので今しばらくお待ちください。

送信内容は以下になります。

【送信日時】
!date!

【送信内容】
!message!
------


captmail.cgiが下記となります。

------
# テンプレ変数変換
$mail =~ s/!date!/$date1/g;
$mail =~ s/!name!/$$in{name}/g; <<追加
$mail =~ s/!agent!/$agent/g;
$mail =~ s/!host!/$host/g;
------
------
# 変数変換
$reply =~ s/!date!/$date1/g;
$reply =~ s/!name!/$$in{name}/g; <<追加
------
------
# MIMEエンコード
my $sub_me = $$in{subject} ne '' && defined($cf{multi_sub}->{$$in{subject}}) ? $cf{multi_sub}->{$$in{subject}} : $cf{subject};
$sub_me = $j->set($sub_me,$cf{kcode})->mime_encode;
my $from;
if ($$in{name}) {
$$in{name} =~ s/[\r\n]//g;
$from = $j->set("\"$$in{name}様\" <$email>",$cf{kcode})->mime_encode; <<この行に"様"追加
} else {
$from = $email;
}
------

何か直したりないとかあれば教えて頂きたいです。
知識が足りない中で申し訳ありませんが、どうぞよろしくお願いします。


記事No: 14652
投稿日: 2016/02/09(Tue) 10:57:43
タイトルRe: CaptchaMail 自動返信内容カスタマイズ2
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

sub send_mail では、$$in{name}の内容はhex_encodeされているので、
化けるのだと思います。

$reply を入れ替える前に
$decode_name = hex_decode($$in{name});
として、元の名前にデコードした上で

$reply =~ s/!name!/${decode_name}様/g;

とすればいいと思います。$mailも敬称つけて入れ替えるなら

$mail =~ s/!name!/${decode_name}様/g;


記事No: 14653
投稿日: 2016/02/09(Tue) 16:26:17
タイトルRe^2: CaptchaMail 自動返信内容
ID情報: hamel
投稿者: Hamel
URLhttp://drc3.news-site.net/script1/

> sub send_mail では、$$in{name}の内容はhex_encodeされているので、
> 化けるのだと思います。
>
> $reply を入れ替える前に
> $decode_name = hex_decode($$in{name});
> として、元の名前にデコードした上で
>
> $reply =~ s/!name!/${decode_name}様/g;
>
> とすればいいと思います。$mailも敬称つけて入れ替えるなら
>
> $mail =~ s/!name!/${decode_name}様/g;

$decode_name = hex_decode($$in{name});

ではなくて

my $decode_name = hex_decode($$in{name});

ではないでしょうか?


記事No: 14654
投稿日: 2016/02/09(Tue) 16:55:53
タイトルRe^3: CaptchaMail 自動返信内容
ID情報: hirayama
投稿者: hirayama
URLhttp://shade-search.com/sts/fsw/wiki.cgi

> $decode_name = hex_decode($$in{name});
>
> ではなくて
>
> my $decode_name = hex_decode($$in{name});
>
> ではないでしょうか?

そのとおりです。
my つけないとエラーになりますね。
失礼しました。


記事No: 14676
投稿日: 2016/02/23(Tue) 18:54:51
タイトルRe^4: CaptchaMail 自動返信内容
ID情報: ayusugar
投稿者: ayucharion

> > $decode_name = hex_decode($$in{name});
> >
> > ではなくて
> >
> > my $decode_name = hex_decode($$in{name});
> >
> > ではないでしょうか?
>
> そのとおりです。
> my つけないとエラーになりますね。
> 失礼しました。

遅くなりましたがありがとうございます。
確認してみます。


[検索ページ] [掲示板]