# Mini Form Ver1.0========================================================================
# テンプレート式フォームメールスクリプトセットアップファイル
# (c)Web寺子屋 OGIPOGI
#
# このスクリプトの無断配布は禁止します。
# 配布しない限り、改造、設置代行は自由です。
#
# info@web-terakoya.net
# http://www.web-terakoya.net/
#
# ===============================================================================
# 初期設定用ファイル
# マイナーバージョンアップ時にスクリプトを入れ替えても、初期設定の変更は不要です。
# ===============================================================================
# 日本語コードjcode.plへのパス
require './jcode.pl';
# 必須項目名
@hissu_koumoku = (
'お名前',
'性別',
'郵便番号',
'住所',
'電話',
'FAX',
'Email'
);
# クッキーに保存する項目名
@cook_data = (
'お名前',
'性別',
'郵便番号',
'住所',
'電話',
'FAX',
'Email'
);
# 投稿フォームページへのパス
$form_html = './index.html';
# 登録確認画面のHTMLファイルへのパス
$regist_html = './regist.html';
# 投稿後の戻り先ページへのパス
$modoru = './thanks.html';
# 画面の色や背景の設定 (BODYタグ HTML書式。エラー画面で使用。不用の場合は空白)
$body = '
';
# Sendmailへのパス
$sendmail='/usr/lib/sendmail';
# 管理者メールアドレス
$mailto = 'xxx@xxxx.com';
# ユーザーにもメールを送信する
# 送信する場合 yes
# 送信しない場合 no
$usermail = 'yes';
# 送信されるメールの件名
$subject = 'Mini_Form Ver1.0 サンプル';
# メール上部テンプレート
$mail_top =<< 'EOF';
=================================================
ご注文ありがとうございます。
=================================================
このたびは、ご注文いただきありがとうございます。
お客さまのご注文内容は以下の通りです。
-------------------------------------------------
EOF
# メール下部のテンプレート
$mail_bottom =<< 'EOF';
=================================================
○月△日までの期間中もれなく素敵な粗品を差し上げ
ています。商品と一緒に送りますので、楽しみにお待
ちください。
--------------------------------------------------
○○商店
〒111-1111
東京都○○区曙町1-2-3 ○○ビル1F
TEL:03-1111-1111 FAX:03-1111-1112
Email:info@xxx.com
--------------------------------------------------
EOF
# ヘッダー(エラー画面で使用。不用の場合は空白)
$header =<<'EOF';
EOF
# フッター(エラー画面で使用。不用の場合は空白)
$foot =<<'EOF';
EOF
# ===============================================================================
# デコード(これより下編集不可)
# ===============================================================================
sub decode {
# フォームからのデータを取得
if ($ENV{'REQUEST_METHOD'} eq "POST") { read(STDIN, $buffer, $ENV{'CONTENT_LENGTH'}); }
else { $buffer = $ENV{'QUERY_STRING'}; }
@pairs = split(/&/,$buffer);
# フォームからのデータを連想配列に格納
foreach $pair (@pairs) {
($name, $value) = split(/=/, $pair);
$name =~ tr/+/ /;
$name =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
$value =~ tr/+/ /;
$value =~ s/%([a-fA-F0-9][a-fA-F0-9])/pack("C", hex($1))/eg;
&jcode'convert(*name,'sjis');
&jcode'convert(*value,'sjis');
if ($name =~ /^email/i || $name =~ /^e\-mail/i || $name =~ /^E\-mail/i || $name =~ /^Email/i) {
$value =~ s/ / /g;
if ($value =~ / / || $value =~ /;/) { $value = ""; }
if (!($value =~ /(.*)\@(.*)\.(.*)/)) { $value = ""; }
$email = $value;
}
# 入力データのチェック
# タグが入力されていれば、それを無効にする。<などに置き換え表示してる
$value =~ s/</g;
$value =~ s/>/>/g;
# 区切り文字の”,”があれば”,”に変換
$value =~ s/\,/,/g;
# 改行コードを
に変換(上からWin、Mac、Unix用の処理)
$value =~ s/\r\n/
/g;
$value =~ s/\r/
/g;
$value =~ s/\n/
/g;
# 連想配列に格納
$FORM{$name} = $value;
push (@DATA_N,$name);
push (@DATA_V,$value);
}
}
# ===============================================================================
# 終わり
# ===============================================================================
1;