#!/usr/local/bin/perl ######################################################################### # このプログラムの使用方法 # # # # mail_form.cgi.txt base.pl.txt test.html.txt my.pl.txt cgi-lib.pl.txt # # jcode.pl.txt をローカルに保存し .txt の無い名称にしてください. # # # # フォームに入力されたデータを、処理し、 # # あらかじめ指定されたメールアドレスと # # フォームに入力されたメールアドレスに # # 入力されたデータを送信します. # # # # また、入力されたデータを指定された、ファイルに保存します. # # オプションで、入力日をファイルに保存する事もできます. # # # # # # フォームのHTMLページに以下の記述をしてください. # #
# # IP_ADDRESS にはご利用のサーバーのIPアドレスを記入してください. # # # # このファイルを文字コードEUC、CR+LFで保存してください. # # # # base.plの記述内容とファイル名. # # カスタマイズについてはbase.plファイルの解説文をお読みください. # # # # 複数のフォームからこのプログラムを利用する場合は # # base.plの記述内容のカスタマイズと # # このファイルとbase.plのファイル名を変更する必要があります. # # base.plのファイル名を変更した場合は、このファイルの # # require "base.pl";のbase.plを新しいファイル名に変更し、 # # 文字コードEUC、CR+LFで保存してください. # # また、フォームHTMLのactionのファイル名記述を # # このプログラムの新しいファイル名に変更してください # # # # このファイル mail_form.cgi (あるいは新しいファイル名) # # base.pl (あるいは新しいファイル名) # # cgi-lib.pl # # jcode.pl # # my.pl # # の5ファイルをサーバーの # # usr/local/etc/httpd/cgi-bin または www/cgi-bin # # にアップロードしてください. # # この場合必ずアスキーモードあるいはテキストモードで送信してください。 # # # # 送信後、このファイル mail_form.cgi (あるいは新しいファイル名) # # のパーミッションを 0755 あるいは -rwxr-xr-x に設定してください. # # # # このプログラムは、SPEEDEX 管理下のサーバーでのみ利用できます. # # Copyright (c) 1999-2006 Tadao Mochizuki # # webmaster@creative-japan.org # # # ######################################################################### require "base.pl"; require "cgi-lib.pl"; &ReadParse; require "jcode.pl"; require "my.pl"; ##################### #入力フォームデータをEUCに変換する while (($k,$v) = each %in) { &jcode'convert(*v,"euc"); $in{$k} = $v; } ##################### #入力フォーム名英文と表示用日本語の配列を読みこむ $name_list_e = @name_list_e; for ($i = 0; $i < $name_list_e; $i++) { $our{$name_list_e[$i]} = $name_list_j[$i]; } ##################### #入力フォーム必須事項が記入されていない場合、警告する $warning_flg = 0; foreach $key (keys %our) { if (($key !~/_$/) && ($in{$key} eq "" && $in{$key} == 0)) { $warning_title = "$our{$key}"; &warning; $warning_flg = 1; last; } } if ($warning_flg == 0) { ##################################### #データを指定された、ファイルに保存する if($save_flg ==1) { &save_data; } ##################################### #完了HTMLを表示する &thank_you; ##################################### #メール用データ準備 while (($n,$m) = each %in) { &jcode'convert(*m,"jis"); $in{$n} = $m; } while (($o,$p) = each %our) { &jcode'convert(*p,"jis"); $our{$o} = $p; } &jcode'convert(*r_body,"jis"); &jcode'convert(*r_order_top,"jis"); ##################################### #webmasterあてに入力データをメールする &mail_to_webmaster; ##################################### #入力者あてに入力完了をメールする if($auto ==1 && $in{"ajE-mail_"} ne "") { &mail_to_custmr; } }