CGI-BBS > 電子掲示板 > 簡易BBS > 簡易BBS21のパスワード生成の文字化け


カレッヂ
カレッヂ


質問者 リバウド  投稿日 2/12(月) 02:04:30
簡易BBS21で投稿の際パスワードが送られますが、その際に送られてきたメールの
件名の部分が文字化けしてしまいます。治す方法はありますでしょうか。
あとひとつ質問があるのですが、パスワードが送られてきた時、本文の中に

xxx.or.jpから請求されたパスワードをお知らせします。

と書いてあるのですが、この部分をホスト名ではなく
ページのタイトルにしたいと思うのですが、どうしたら良いのでしょうか。
よろしくお願いいたします。
質問者 リバウド  [削除]  投稿日 2/12(月) 07:42:21
申し訳ありません
もうひとつ質問なのですが、パスワード発行係数とは何でしょうか?
質問者 リバウド  [削除]  投稿日 2/13(火) 00:15:17
sub Sendmail {

        local($MAILTO,$KEY) = @_;

        open(OUT,"| $sendmail -t");

        print OUT &jis("X-Processed: $date_now\n");
        print OUT "X-SENDER: $REMOTE_HOST \[$REMOTE_ADDR\]\n";
        print OUT "To: $MAILTO\n";
        print OUT "From: Information:;\n";
        print OUT &jis("Subject: パスワードのご案内\n");
        print OUT "Content-Transfer-Encoding: 7bit\n";
        print OUT 'Content-Type: text/plain; charset=iso-2022-jp' . "\n\n";

        print OUT &jis("$REMOTE_HOST から請求されたパスワードをお知らせします。\n\n");

        print OUT &jis("EMAIL  $in{'email'}\n");
        print OUT &jis("PASSWORD  $KEY\n\n");

        print OUT &jis("もしこのメールに覚えがない場合は、誰かがあなたのEメールを使ったことになりますが、\n");
        print OUT &jis("そのような「なりすまし」を防止するための措置ですので、お手数ですがこのまま\n");
        print OUT &jis("このメールを削除していただければ、あなたにこの件で被害が及ぶことはありません。\n\n");

        print OUT &jis("以上.\n");
        close(OUT);


この中のSubjectの部分が文字化けして届きます。
よろしくお願いします
回答者 しあわせのツボ  [削除]  投稿日 2/13(火) 10:37:30
本来quoted-printableにエンコードすべきところに生のJISを入れているので、化けることは考えられますね。
メーラを変えて受信してみるとどうですか?
質問者 リバウド  [削除]  投稿日 2/13(火) 12:15:47
動作確認のために自分当てにメールを送ってみただけなのですが、
これから他の人が利用する場合もSubjectの部分は文字化けしてしまうのでしょうか
なんとか治す方法があれば教えていただけないでしょうか
よろしくお願いします
回答者 しあわせのツボ  [削除]  投稿日 2/13(火) 12:40:39
てっとりばやくて確実なのは
print OUT "Subject: Password Information\n";
と英文にしてしまうことです。
どうしても日本語がいい! という場合は、自分でエンコードして
print OUT "Subject: =?iso-2022-jp?B?GyRCJVElOSVvITwlSSROJDQwRkZiGyhC?=\n";
とすれば化けないと思います。

文面の変更については、
print OUT &jis("$REMOTE_HOST から請求されたパスワードをお知らせします。\n\n");
の$REMOTE_HOSTを適宜書き換えればOKです。
質問者 リバウド  [削除]  投稿日 2/14(水) 00:45:28
英文にすれば大丈夫なんですか
それが分かれば英文にします。ありがとうございます。
つい先日CGIに初めて触れたばかりなので、質問ばかりになってしまっていて
申し訳ありません。できるだけ自分で調べてようと思いますがCGIはかなり難しいです。
これからもどうしてもわからないときには、聞いてしまうと思いますがよろしくお願いします。

このページは終了したので返信(回答)は書きこめません

Web裏技