メール送信後にページの内容を書き換えたい
フォームからメール送信するCGIを作成しました。
メール送信処理中は「送信中です」などのページを表示させておき、送信終了後に「送信完了しました」というように、ページの内容を書き換えたいのですが、どのように書けばいいのかわかりません。
今は、送信完了画面は出ますが、送信処理中は次のページへの移動中で止まっているようにも見えるので、できれば「送信中である」というステータスがわかるようにしたいのです。
以下、現在のソースです。
sub mailing_send{
# メールファイル作成
open(MAIL, ">$mail_dir/$mailfile");
---(中略)
close(MAIL);
# メールファイルオープン #
open(MAIL, "$mail_dir/$mailfile");
@mail = <MAIL>;
close(MAIL);
# アドレスファイルオープン
open(ADDR, "$addr_dir/$addrfile");
@addr = <ADDR>;
close(ADDR);
$i = 0;
foreach $fld (@addr){
chop($fld);
($to_addr, $to_name) = split(/,/, $fld);
open(FH, ">$tmpfile");
print FH @mail;
close(FH);
# JISコードに変換
$conv = "$nkf -j $tmpfile > ${tmpfile}.j";
$ret = system($conv);
# メール送信
$command = "$sendmail -ba $to_addr < $tmpfile.j";
$ret = system($command);
$i++;
}
# HTML表示
$pagetitle = "メール送信完了";
&html_head();
print "<h3>メール送信</h3>\n";
print "ファイル$mailfileをアドレス$addrfileに送信しました。\n";
print "計$i通\n";
html_bottom();
exit;
}
どなたか詳しい方、教えてください。