# 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';
セットスクリプト モジュール 小物 ローカル FAQ サポートBBS

EOF # フッター(エラー画面で使用。不用の場合は空白) $foot =<<'EOF';
Web寺子屋 OGIPOGI E-mail:info@web-terakoya.net
Copyright© 2000-2001 OGIPOGI All Rights Reserved.
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; # 改行コードを
に変換(上から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;