#! /usr/local/bin/perl## 注文データ入力の練習2(買い物かご方式の1画面パターン)# 1.注文入力# 2.確認表示# 3.メール送信(管理者と送り主)## id=orderk2.cgi ## update=2001.03.25
# バグ修正・・・のしと支払い方法送信
# 日本語コード変換ライブラリ(v2.0)の指定# (このCGIと同じディレクトリに設置する場合は、'./jcode.pl'でよい)# &ReadParse命令で、$in{ }の変数にフォーム入力データが格納される
require 'cgi-lib.pl';require 'jcode.pl';&ReadParse;
# 設置するURLを設定$reload = ''http://xxx/orderk2.cgi';# 画像ファイルディレクトリ$dir="gazo/";
# 商品名テーブルセット$hinmei[1] = "秩父錦・純米大吟醸 1.8L";$hinmei[2] = "秩父錦・上撰大吟醸 1.8L";$hinmei[3] = "秩父錦・純米酒 1.8L";
# 価格テーブルセット$tanka[1]=4855;$tanka[2]=4175;$tanka[3]=1940;
# かごの中をどこに表示させるか# 上1、下2、なし0(1.2以外)$ichi="1";
# メールの送り先#$sendmail = '/usr/lib/sendmail';$myaddress ='ooooo@xxxxx.co.jp';
# 税率$zeiritu=0.05;
$noshi[0]="なし";$noshi[1]="御中元";$noshi[2]="御歳暮";$noshi[3]="御祝い";$noshi[4]="内祝い";$noshi[5]="御見舞い";$noshi[6]="その他";
$noshinm[1]="ご依頼主のお名前";$noshinm[2]="ご依頼主の姓のみ";$noshinm[3]="その他";
$shiharai[1]="郵便振込";$shiharai[2]="代金着払い";
# デバッグモードは、on$test="";
##################################### ## メインルーチン(処理の分岐) ## #####################################
# 全体の流れを決定する
# 前回までの注文データ(1番最初は無意味ですが、それ以外は共通なのでここに置いた)$order=$in{order};
if ($in{'action'} eq 'order') { ℴ }# 初期画面elsif ($in{'action'} eq 'first') { &first; }# かごに追加elsif ($in{'action'} eq 'kago') { &kago; }# かごの中を表示elsif ($in{'action'} eq 'kagocheck') { &kagocheck; }# かごの中の訂正・削除elsif ($in{'action'} eq 'kagocheck2') { &kagocheck2; &kagocheck;}# 注文の確定elsif ($in{'action'} eq 'kakutei') { &kakutei; }# 住所入力elsif ($in{'action'} eq 'jusho') { &jusho; }
elsif ($in{'action'} eq 'check') { ✓ }
elsif ($in{'action'} eq 'send') { &sendmail; }# 最初の処理else { &syokika; }
############################################## ## 初回の初期化処理 # # ##############################################
sub syokika {
# 注文データの初期化$order="";
&first;
} # syokika############################################## ## 最初に表示する画面(注文書画面) # # ##############################################
sub first {
print "Content-type: text/html\n\n";
print <<EOM;<HTML><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=x-euc-jp"><HEAD><TITLE>ご注文メール</TITLE></HEAD><BODY BGCOLOR="#CCffff"><FONT SIZE=4 COLOR=#000000><CENTER><PRE><H2>ご注文方法の説明</H2></PRE></CENTER><HR SIZE=3 WIDTH=100%>
いらっしゃいませ。 毎度ご利用頂きありがとうございます。<BR>下のご注文方法をお読みになり、『注文画面に進む』をクリックしてお進みくださいませ。<BR><BR><B>ご注文方法</B><BR><BR><FONT COLOR=#0000FF>1.ご注文する商品が決まりましたら、数量を選択し、『かごに入れる』をクリックしてください。<BR> (数量が1で良い場合は、変更する必要はありません)<BR>2.引き続き、ご注文する商品をお選びください。<BR>3.かごに入れた商品は、いつでも確認と変更・取消ができます。<BR> その場合は『かごの中を見る』をクリックして下さい。<BR>4.ご注文の確定は、『かごの中を見る』をクリックし、『ご注文の確定』をクリックして下さい。</FONT><BR><BR>
<HR SIZE=3 WIDTH=100%>EOM
print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="order">'."\n";
print '<DD><INPUT TYPE="SUBMIT" VALUE="注文画面に進む">'."\n";print '</DL>'."\n";
print '</BODY>'."\n";print '</HTML>'."\n";
} # first################################## hiddenパラメータ共通項目 ##################################sub hidpara {print '<input type=hidden name="order" value="'.$order.'">'."\n";} # end of hidpara########################## ## 注文する画面 # # ##########################
sub order {
print "Content-type: text/html\n\n";print <<EOM;<HTML><HEAD><TITLE>ご注文画面</TITLE></HEAD><BODY BGCOLOR="#ffffff"><H2>ご注文画面</H2>EOM
# かごの中を表示if ($ichi eq "1") { &display; }
# 該当データが0件の場合は表示しないif ($order ne "") {print '<BR>'."\n";
# ボタンを並べるprint '<TABLE WIDTH="80%" >';print '<TR VALIGN="BOTTOM">';
print '<TD>';
print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="first">'."\n";print '<INPUT TYPE="SUBMIT" VALUE="注文を中止して最初に戻る">'."\n";print '</FORM>'."\n";
print '</TD><TD> </TD><TD>';
print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="kagocheck">'."\n";&hidpara;print '<INPUT TYPE="SUBMIT" VALUE=" 注文内容の訂正・削除 ">'."\n";print '</FORM>'."\n";
print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="kakutei">'."\n";&hidpara;print '<INPUT TYPE="SUBMIT" VALUE="ご注文の確定">'."\n";print '</FORM>'."\n";
print '</TD></TR>';print '</TABLE>';
} # if
print '<BODY><TABLE BORDER="1" CELLSPACING="1" CELLPADDING="1" WIDTH="100%">' . "\n";print '<TH LIGN="CENTER" VALIGN="MIDDLE">商品写真</TH>' . "\n";
print '<TH LIGN="CENTER" VALIGN="MIDDLE">商品名・特徴・価格(税抜き)</TH>' . "\n";print '<TH LIGN="CENTER" VALIGN="MIDDLE">ご注文数入力欄</TH>' . "\n";#print '<TR ALIGN="CENTER" VALIGN="MIDDLE">'."\n";
print '<TD><IMG SRC="sake1.gif" HEIGHT="190" WIDTH="120"></TD>'."\n";print '<TD ALIGN="CENTER" VALIGN="TOP">'."\n";print '<BR>'."\n";print '<FONT SIZE=5 COLOR=#0000FF>'.$hinmei[1].'</FONT>'."\n";print '<BR><BR><FONT SIZE=2 COLOR=#660000>最良の好適米を使い、丹念に磨き上げた手作りの酒。'."\n";print '<BR>まろやかな香味が口の中に優しく広がる逸品です。</FONT>'."\n";print '<BR><BR>'."\n";print '<FONT SIZE=4 COLOR=#660000>容量 1800ml</FONT>'."\n";print '<FONT SIZE=4 COLOR=#0000FF><B> 4,855円</B></FONT>'."\n";
print '<BR><BR>'."\n";print '<FONT SIZE=2 COLOR=#660000>商品番号 1</FONT>'."\n";
print '</TD>'."\n";
print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="kago">'."\n";print '<input type=hidden name="syohin" value="1">'."\n";&hidpara;print '<TD ALIGN="CENTER" VALIGN="TOP">'."\n";print '<BR><FONT SIZE=2 COLOR=#660000>▼をクリックし数量一覧から<BR>注文数をクリックします。</FONT>'."\n";print '<BR><BR>'."\n";print '<SELECT NAME="selsu" >'."\n";print '<OPTION VALUE="1" SELECTED>1本'."\n";print '<OPTION VALUE="2">2本'."\n";print '<OPTION VALUE="3">3本'."\n";print '<OPTION VALUE="4">4本'."\n";print '<OPTION VALUE="5">5本'."\n";print '<OPTION VALUE="6">6本'."\n";print '<OPTION VALUE="7">7本'."\n";print '<OPTION VALUE="8">8本'."\n";print '<OPTION VALUE="9">9本'."\n";print '<OPTION VALUE="10">10本'."\n";print '</SELECT>'."\n";print '<BR><BR>'."\n";print '<input type=submit value="かごに入れる">' . "\n";
print '</FORM>'."\n";print '</TD>'."\n";
print '</TR>'."\n";##############print '<TR ALIGN="CENTER" VALIGN="MIDDLE">'."\n";print '<TD><IMG SRC="sake1.gif" HEIGHT="190" WIDTH="120"></TD>'."\n";print '<TD ALIGN="CENTER" VALIGN="TOP">'."\n";print '<BR>'."\n";print '<FONT SIZE=5 COLOR=#0000FF>'.$hinmei[2].'</FONT>'."\n";print '<BR><BR><FONT SIZE=2 COLOR=#660000>杜氏の持っている技の全てを注いで作られた作品。'."\n";print '<BR>すっきりとした軽快な飲み口です。</FONT>'."\n";print '<BR><BR>'."\n";print '<FONT SIZE=4 COLOR=#660000>容量 1800ml</FONT>'."\n";print '<FONT SIZE=4 COLOR=#0000FF><B> 4,175円</B></FONT>'."\n";
print '<BR><BR>'."\n";#print '<FONT SIZE=2 COLOR=#660000>商品番号 2</FONT>'."\n";print '</TD>'."\n";
print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="kago">'."\n";print '<input type=hidden name="syohin" value="2">'."\n";&hidpara;print '<TD ALIGN="CENTER" VALIGN="TOP">'."\n";print '<BR><FONT SIZE=2 COLOR=#660000>▼をクリックし数量一覧から<BR>注文数をクリックします。</FONT>'."\n";print '<BR><BR>'."\n";print '<SELECT NAME="selsu" >'."\n";print '<OPTION VALUE="1" SELECTED>1本'."\n";print '<OPTION VALUE="2">2本'."\n";print '<OPTION VALUE="3">3本'."\n";print '<OPTION VALUE="4">4本'."\n";print '<OPTION VALUE="5">5本'."\n";print '<OPTION VALUE="6">6本'."\n";print '<OPTION VALUE="7">7本'."\n";print '<OPTION VALUE="8">8本'."\n";print '<OPTION VALUE="9">9本'."\n";print '<OPTION VALUE="10">10本'."\n";print '</SELECT>'."\n";print '<BR><BR>'."\n";print '<input type=submit value="かごに入れる">' . "\n";
print '</FORM>'."\n";print '</TD>'."\n";print '</TR>'."\n";
print '<TR ALIGN="CENTER" VALIGN="MIDDLE">'."\n";print '<TD><IMG SRC="sake1.gif" HEIGHT="190" WIDTH="120"></TD>'."\n";print '<TD ALIGN="CENTER" VALIGN="TOP">'."\n";print '<BR>'."\n";print '<FONT SIZE=5 COLOR=#0000FF>'.$hinmei[3].'</FONT>'."\n";print '<BR><BR><FONT SIZE=2 COLOR=#660000>ほどよいコクと軽快でなめらかな飲み口。'."\n";print '<BR>魚料理や海老、貝料理と相性が良い。</FONT>'."\n";print '<BR><BR>'."\n";print '<FONT SIZE=4 COLOR=#660000>容量 1800ml</FONT>'."\n";print '<FONT SIZE=4 COLOR=#0000FF><B> 1,940円</B></FONT>'."\n";
print '<BR><BR>'."\n";#print '<FONT SIZE=2 COLOR=#660000>商品番号 3</FONT>'."\n";print '</TD>'."\n";
print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="kago">'."\n";print '<input type=hidden name="syohin" value="3">'."\n";&hidpara;print '<TD ALIGN="CENTER" VALIGN="TOP">'."\n";print '<BR><FONT SIZE=2 COLOR=#660000>▼をクリックし数量一覧から<BR>注文数をクリックします。</FONT>'."\n";print '<BR><BR>'."\n";print '<SELECT NAME="selsu" >'."\n";print '<OPTION VALUE="1" SELECTED>1本'."\n";print '<OPTION VALUE="2">2本'."\n";print '<OPTION VALUE="3">3本'."\n";print '<OPTION VALUE="4">4本'."\n";print '<OPTION VALUE="5">5本'."\n";print '<OPTION VALUE="6">6本'."\n";print '<OPTION VALUE="7">7本'."\n";print '<OPTION VALUE="8">8本'."\n";print '<OPTION VALUE="9">9本'."\n";print '<OPTION VALUE="10">10本'."\n";print '</SELECT>'."\n";print '<BR><BR>'."\n";print '<input type=submit value="かごに入れる">' . "\n";
print '</TR>'."\n";## かごの中を表示if ($ichi eq "2") { &display; }
} # order
############################################## ## かごに入れるをクリックしたときの処理 # # ##############################################sub kago {
# 今回注文のデータを-でつなぐ# 区切り記号は自分の好きなもので良い、ここでは画面で確認しやすいものを使用しました。$chumon="$in{syohin}-$in{selsu}";
# 注文データを$orderに,で連結するif ($order eq "") { $order=$chumon }else { $order="$order,$chumon" }
# 注文画面に戻るℴ
} # kago
############################################## ## 注文データ分解サブルーチン # # ##############################################sub bunkai {
# 1注文単位に分ける@a = split(/,/,$bundt);$kensu=@a;# 次に、商品番号と注文数に分ける$i=1;foreach (@a) { ($orderno[$i],$ordersu[$i])= split(/-/,$_) ;$i++ }
} # bunkai
############################################## ## かごの中の表示ルーチン # # ##############################################
sub display {
# 該当データが0件の場合
if ($order eq "") {print '<BR><BR><FONT size=5 color="blue">';print '<CENTER>ご注文データはありません。</CENTER></FONT>'."\n";return } # end of if
# 1注文単位に分ける$bundt=$order;&bunkai;
# 変数確認if ($test eq "on") {print 'ご注文内容 $order=';print $order;print '<BR><BR>'."\n";
print "ご注文件数=$kensu\n";print '<BR><BR>'."\n";print "ご注文明細";$i=1;foreach (@a) {print "№ $i\n";print "商品番号=$orderno[$i]\n";print '<BR>'."\n";print "注文数量=$ordersu[$i]\n";print '<BR>'."\n";$i++ } # foreach
# 表作成print '<TABLE BORDER WIDTH="100%">'."\n";print "<TR>";print '<TH ALIGN="MIDDLE">'."\n";print '<FONT SIZE=4 COLOR=#0000FF>'."\n";print 'ご注文商品名';print '</FONT>';print "</TH>";print '<TH ALIGN="MIDDLE">'."\n";print '<FONT SIZE=4 COLOR=#0000FF>'."\n";print '価格';print '</FONT>';print "</TH>";print '<TH ALIGN="MIDDLE">'."\n";print '<FONT SIZE=4 COLOR=#FF0000>'."\n";print 'ご注文数量';print '</FONT>';print "</TH>";print '<TH ALIGN="MIDDLE">'."\n";print '<FONT SIZE=4 COLOR=#FF0000>'."\n";print '金額';print '</FONT>';print "</TH>";print "</TR>";
$suryo=0; # 合計数量$total=0; # 合計金額for ($i=1; $i<=$kensu; $i++) {
print "<TR>";#ご注文商品名print '<TD ALIGN="MIDDLE">'."\n";print '<FONT SIZE=4>'."\n";
print $hinmei[$orderno[$i]];print '</FONT>';print "</TD>";# 単価print '<TD ALIGN="MIDDLE">'."\n";print '<FONT SIZE=4>'."\n";print $tanka[$orderno[$i]];print '</FONT>';print "</TD>";# 数量print '<TD ALIGN="MIDDLE">'."\n";print '<FONT SIZE=4 COLOR=#FF0000>'."\n";print $ordersu[$i];print '</FONT>';print "</TD>";# 金額計算$kingak=$ordersu[$i] * $tanka[$orderno[$i]];print '<TD ALIGN="RIGHT">'."\n";print '<FONT SIZE=4 COLOR=#FF0000>'."\n";print $kingak;print '</FONT>';print "</TD>";print "</TR>";# 数量加算$suryo = $suryo + $ordersu[$i];# 金額加算$total = $total + $kingak;
} # end of for# 合計数print '<TD COLSPAN="2" ALIGN="MIDDLE">'."\n";print '<FONT SIZE=5 COLOR=#0000FF>'."\n";print '商品計';print '</FONT>';print "</TD>";
print '<TD ALIGN="MIDDLE">'."\n";print '<FONT SIZE=5 COLOR=#FF0000>'."\n";print $suryo;print '</FONT>';print "</TD>";
print '<TD ALIGN="RIGHT">'."\n";print '<FONT SIZE=5 COLOR=#FF0000>'."\n";print $total;print '</FONT>';print "</TD>";print "</TR>";
# 消費税$tax=$total * $zeiritu;# 切り捨て($tax,$dummy)=split(/\./,$tax);
print "<TR>";print '<TD COLSPAN="3" ALIGN="MIDDLE">'."\n";print '<FONT SIZE=5 COLOR="blue">'."\n";print '消費税';print '</FONT>';print "</TD>";
print '<TD ALIGN="RIGHT">'."\n";print '<FONT SIZE=5 COLOR="blue">'."\n";print $tax;print '</FONT>';print "</TD>";print "</TR>";
# 税込み合計$goukei=$total + $tax;print "<TR>";print '<TD COLSPAN="2" ALIGN="MIDDLE">'."\n";print '<FONT SIZE=5 COLOR=#0000FF>'."\n";print '合 計';print '</FONT>';print "</TD>";
print '<TD ALIGN="RIGHT">'."\n";print '<FONT SIZE=5 COLOR=#FF0000>'."\n";print $goukei;print '</FONT>';print "</TD>";print "</TR>";
print "</TABLE>";
} # display
############################################## ## かごの中の確認表示ルーチン # # ##############################################
sub kagocheck {
if ($order eq "") {ℴreturn;
} # end of if
print "Content-type: text/html\n\n";print <<EOM;<HTML><HEAD><TITLE>ご注文画面</TITLE></HEAD><BODY BGCOLOR="#ffffff"><H2> かごの中の確認</H2>EOM
# 訂正入力用print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="kagocheck2">'."\n";&hidpara;
# 表作成print '<TABLE BORDER WIDTH="100%">'."\n";print "<TR>";print '<TH ALIGN="MIDDLE">'."\n";print '<FONT SIZE=4 COLOR=#0000FF>'."\n";print 'ご注文商品名';print '</FONT>';print "</TH>";print '<TH ALIGN="MIDDLE">'."\n";print '<FONT SIZE=4 COLOR=#0000FF>'."\n";print '価格';print '</FONT>';print "</TH>";print '<TH ALIGN="MIDDLE">'."\n";print '<FONT SIZE=4 COLOR=#FF0000>'."\n";print 'ご注文数量';print '</FONT>';print "</TH>";print '<TH ALIGN="MIDDLE">'."\n";print '<FONT SIZE=4 COLOR=#FF0000>'."\n";print '金額';print '</FONT>';print "</TH>";print '<TH ALIGN="MIDDLE">'."\n";print '<FONT SIZE=4 COLOR=#FF0000>'."\n";print '取消';print '</FONT>';print "</TH>";
print "</TR>";
print $hinmei[$orderno[$i]];print '</FONT>';print "</TD>";# 単価print '<TD ALIGN="MIDDLE">'."\n";print '<FONT SIZE=4>'."\n";print $tanka[$orderno[$i]];print '</FONT>';print "</TD>";# 数量print '<TD ALIGN="RIGHT">'."\n";print '<FONT SIZE=4 COLOR=#FF0000>'."\n";print '<INPUT NAME="inpsu'.$i.'" TYPE="Text" SIZE=4 MAXLENGTH=3 value='.$ordersu[$i].'>'."\n";
print '</FONT>';print "</TD>";# 金額計算$kingak=$ordersu[$i] * $tanka[$orderno[$i]];print '<TD ALIGN="RIGHT">'."\n";print '<FONT SIZE=4 COLOR=#FF0000>'."\n";print $kingak;print '</FONT>';print "</TD>";# 削除print '<TD ALIGN="MIDDLE">'."\n";print '<INPUT TYPE="checkbox" name="del'.$i.'" value="1">';print "</TD>";
print "</TR>";# 数量加算$suryo = $suryo + $ordersu[$i];# 金額加算$total = $total + $kingak;
} # end of for
# 合計数print "<TR>";print '<TD COLSPAN="2" ALIGN="MIDDLE">'."\n";print '<FONT SIZE=5 COLOR=#0000FF>'."\n";print '合 計';print '</FONT>';print "</TD>";
print '<TD ALIGN="RIGHT">'."\n";print '<FONT SIZE=5 COLOR=#FF0000>'."\n";print $total;print '</FONT></TD>';# 取消列のところに空白を入れるprint '<TD> </TD>';print "</TR>";print "</TABLE>";
print '<BR><BR>'."\n";
# 注文なしなら表示しないif ($order ne "") {# ボタンを並べるprint '<TABLE>';
print '<TR>';
print '<TD>';print '<input type=submit value="訂正・削除の実行">' . "\n";print '</TD><TD> </TD><TD>';print '<input type=reset value="訂正内容取消">' . "\n";print '</FORM>'."\n";print '</TD><TD> </TD><TD>';
print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="order">'."\n";&hidpara;print '<INPUT TYPE="SUBMIT" VALUE="注文画面に戻る">'."\n";print '</FORM>'."\n";
print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="kakutei">'."\n";&hidpara;print '<INPUT TYPE="SUBMIT" VALUE="ご注文の確定">'."\n";print '</FORM>'."\n";print '</TD></TR>';print '</TABLE>';
print "</BODY>\n";print "</HTML>\n";
} # kagocheck
############################################## ## 注文データ訂正削除処理ルーチン # # ##############################################
sub kagocheck2 {
# 注文データ$bundt=$in{order};&bunkai;$order="";for ($i=1; $i<=$kensu; $i++) {
# checkbox オン なら削除if ($in{del.$i} != 1) {
# 今回注文のデータをつなぐ$chumon="$orderno[$i]-$in{inpsu.$i}";
} # if} # for
# 訂正後の注文データに入れかえる$in{order}=$order;
} # kagocheck2
################################## ## 注文データの確定画面 # # ##################################
sub kakutei {
print "Content-type: text/html\n\n";print <<EOM;<HTML><HEAD><TITLE>ご注文の確定</TITLE></HEAD><BODY BGCOLOR="#ffffff"><H2>ご注文の確定</H2>EOM
&display;
# ボタンを並べるprint '<TABLE>';print '<TR VALIGN="BOTTOM">';
print '<TD>';print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="order">'."\n";&hidpara;print '<input type=submit value="注文画面に戻る">' . "\n";print '</FORM>'."\n";print '</TD><TD> </TD><TD>';print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="kagocheck">'."\n";&hidpara;print '<input type=submit value="訂正削除画面に戻る">' . "\n";print '</FORM>'."\n";print '</TD><TD> </TD><TD>';
print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="jusho">'."\n";&hidpara;print '<INPUT TYPE="SUBMIT" VALUE="住所・氏名入力へ進む">'."\n";print '</FORM>'."\n";
} # kakutei
############################################## ## 住所氏名入力処理 # # ##############################################
sub jusho {
print <<EOM;<HTML><HEAD><TITLE>ご注文メール</TITLE></HEAD><BODY BGCOLOR="#CCffff"><FONT SIZE=4 COLOR=#000000><CENTER><PRE><H2>ご住所・氏名の登録</H2></PRE></CENTER><HR SIZE=3 WIDTH=100%>
<FORM METHOD="POST" ACTION=$reload><INPUT TYPE="hidden" NAME="action" VALUE="check">
<BR><BR><B>ご依頼主<FONT SIZE=3 COLOR=#FF0000>(ご依頼主とご請求先、お届け先が同一の場合はこの欄のみの入力です)</FONT></B><BR>
<TABLE BORDER="1" WIDTH="70%"><TR><TH ALIGN="LEFT" VALIGN="MIDDLE">お名前(漢字)</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><INPUT TYPE="Text" NAME="ira-namek" SIZE=40></TD></TR><TH ALIGN="LEFT" VALIGN="MIDDLE">お名前(ふりがな)</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><INPUT TYPE="Text" NAME="ira-namef" SIZE=40></TD></TR><TH ALIGN="LEFT" VALIGN="MIDDLE">郵便番号</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><INPUT TYPE="Text" NAME="ira-yubin" SIZE=15></TD></TR><TH ALIGN="LEFT" VALIGN="MIDDLE">ご住所</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><TEXTAREA NAME="ira-addr" COLS=50 ROWS=2 ALIGN=BOTTOM></TEXTAREA></TD></TR><TH ALIGN="LEFT" VALIGN="MIDDLE">電話番号(市外局番から)</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><INPUT TYPE="Text" NAME="ira-tel" SIZE=30></TD></TR><TH ALIGN="LEFT" VALIGN="MIDDLE">メールアドレス(半角入力)</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><INPUT TYPE="Text" NAME="ira-email" Size = 40 ></TD></TR></TABLE>
<BR><BR><B>ご請求先<FONT SIZE=3 COLOR=#FF0000>(未入力時、ご依頼主にご請求させていただきます。)</FONT></B><BR><TABLE BORDER="1" WIDTH="70%"><TR><TH ALIGN="LEFT" VALIGN="MIDDLE">お名前(漢字)</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><INPUT TYPE="Text" NAME="sei-namek" SIZE=40></TD></TR><TH ALIGN="LEFT" VALIGN="MIDDLE">お名前(ふりがな)</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><INPUT TYPE="Text" NAME="sei-namef" SIZE=40></TD></TR><TH ALIGN="LEFT" VALIGN="MIDDLE">郵便番号</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><INPUT TYPE="Text" NAME="sei-yubin" SIZE=15></TD></TR><TH ALIGN="LEFT" VALIGN="MIDDLE">ご住所</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><TEXTAREA NAME="sei-addr" COLS=50 ROWS=2 ALIGN=BOTTOM></TEXTAREA></TD></TR><TH ALIGN="LEFT" VALIGN="MIDDLE">電話番号(市外局番から)</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><INPUT TYPE="Text" NAME="sei-tel" SIZE=30></TD></TR></TABLE>
<BR><BR><B>お届け先<FONT SIZE=3 COLOR=#FF0000>(未入力時、ご依頼主にお届けさせていただきます。)</FONT></B><BR><TABLE BORDER="1" WIDTH="70%"><TR><TH ALIGN="LEFT" VALIGN="MIDDLE">お名前(漢字)</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><INPUT TYPE="Text" NAME="tod-namek" SIZE=40></TD></TR><TH ALIGN="LEFT" VALIGN="MIDDLE">お名前(ふりがな)</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><INPUT TYPE="Text" NAME="tod-namef" SIZE=40></TD></TR><TH ALIGN="LEFT" VALIGN="MIDDLE">郵便番号</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><INPUT TYPE="Text" NAME="tod-yubin" SIZE=15></TD></TR><TH ALIGN="LEFT" VALIGN="MIDDLE">ご住所</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><TEXTAREA NAME="tod-addr" COLS=50 ROWS=2 ALIGN=BOTTOM></TEXTAREA></TD></TR><TH ALIGN="LEFT" VALIGN="MIDDLE">電話番号(市外局番から)</TH><TD ALIGN="LEFT" VALIGN="MIDDLE"><INPUT TYPE="Text" NAME="tod-tel" SIZE=30></TD></TR></TABLE>
<BR><BR><DT><B>のし種類(複数選択の場合は備考に、その旨ご入力下さい)</B><PRE><DD><INPUT NAME="noshi" TYPE="RADIO" VALUE="0" CHECKED>なし <INPUT TYPE="RADIO" NAME="noshi" VALUE="1">御中元 <INPUT TYPE="RADIO" NAME="noshi" VALUE="2">御歳暮 <INPUT TYPE="RADIO" NAME="noshi" VALUE="3">御祝い <INPUT TYPE="RADIO" NAME="noshi" VALUE="4">内祝い <INPUT TYPE="RADIO" NAME="noshi" VALUE="5">お見舞い<DD><INPUT NAME="noshi" TYPE="RADIO" VALUE="6">その他 <INPUT NAME="sonota" TYPE="Text" SIZE=20 MAXLENGTH=20></PRE>
<BR><DT><B>のし紙のお名前(複数の場合は備考に、その旨ご入力下さい)</B><PRE><DD><INPUT NAME="noshinm" TYPE="RADIO" VALUE="1" CHECKED>ご依頼主のお名前 <INPUT TYPE="RADIO" NAME="noshinm" VALUE="2">ご依頼主の姓のみ <DD><INPUT NAME="noshinm" TYPE="RADIO" VALUE="3">その他 <INPUT NAME="sonotanm" TYPE="Text" SIZE=40 MAXLENGTH=40></PRE>
<HR SIZE=3 WIDTH=100%><BR><DT><B>お支払い方法</B><DD><SELECT NAME="shiharai"><OPTION VALUE="1">着荷後に郵便振込(商品と同送した郵便振込用紙を使う)<OPTION VALUE="2">代金着払い(受取人が配送業者へ代金を支払う) </SELECT>
<BR><HR SIZE=3 WIDTH=100%><BR>
<DT><B>備 考</B><DD><TEXTAREA NAME="bikou" COLS=60 ROWS=2></TEXTAREA><INPUT TYPE="hidden" NAME="bikou" VALUE=""><BR><HR SIZE=3 WIDTH=100%><BR><FONT SIZE=3 COLOR=#FF0000><B>(注意)20歳未満の方がお酒を購入することは、法律で禁じられています。</B></FONT><BR><BR>ご注文内容を入力終了しましたら次に、入力終了ボタンをクリックして下さい。<BR>クリック後、ご注文確認画面となります。(この時点では未送信です)<BR><DD><INPUT TYPE="SUBMIT" VALUE=" 入力終了 "> <INPUT TYPE="reset" VALUE="入力内容の消去"></DL><HR></FONT>EOM
&hidpara;print '</FORM></BODY></HTML>'."\n";
} # jusho
############################################## ## 入力データ確認表示画面ルーチン # # ##############################################
sub kakunin {
print <<EOM;<HTML><HEAD><TITLE>ご注文データの確認</TITLE></HEAD><BODY BGCOLOR="#ffffff"><H2>ご注文データの確認</H2>EOM
# かごの中を表示&display;
print '<HR SIZE=3 WIDTH=100%>';
# 送信するprint '<form method="post" action="' . $reload . '">' . "\n";&hidpara;#################
$ordertotal="・商品計: $total円"."\n";$ordertax="・消費税: $tax円"."\n";$ordergoukei="●合 計: $goukei円"."\n";
print '<input type=hidden name="total" value="'.$ordertotal.'">' . "\n";print '<input type=hidden name="tax" value="'.$ordertax.'">' . "\n";print '<input type=hidden name="goukei" value="'.$ordergoukei.'">' . "\n";
for ($i=1; $i<=$kensu; $i++) {
# 金額計算$kingak=$ordersu[$i] * $tanka[$orderno[$i]];$meisai='ご注文商品名:'.$hinmei[$orderno[$i]].' 数量:'.$ordersu[$i].' 個 金額: '.$kingak.'円'."\n";
print '<input type=hidden name="order'.$i.'" value="'.$meisai.'">' . "\n";} # for
# 注文数をメール処理に渡すprint '<input type=hidden name="kensu" value="'.$kensu.'">' . "\n";
######################print '<HR SIZE=3 WIDTH=100%>';
print '<FONT SIZE=5 COLOR=#0000FF>';print "** ご依頼主 **"."\n";print '</FONT>';print '<BR>';
# タグの無効化$ckdt=$in{'ira-namek'} ; &tagck ; $in{'ira-namek'}=$ckdt;$ckdt=$in{'ira-namef'} ; &tagck ; $in{'ira-namef'}=$ckdt;$ckdt=$in{'ira-yubin'} ; &tagck ; $in{'ira-yubin'}=$ckdt;$ckdt=$in{'ira-addr'} ; &tagck ; $in{'ira-addr'}=$ckdt;$ckdt=$in{'ira-tel'} ; &tagck ; $in{'ira-tel'}=$ckdt;$ckdt=$in{'ira-email'} ; &tagck ; $in{'ira-email'}=$ckdt;
$ckdt=$in{'sei-namek'} ; &tagck ; $in{'sei-namek'}=$ckdt;$ckdt=$in{'sei-namef'} ; &tagck ; $in{'sei-namef'}=$ckdt;$ckdt=$in{'sei-yubin'} ; &tagck ; $in{'sei-yubin'}=$ckdt;$ckdt=$in{'sei-addr'} ; &tagck ; $in{'sei-addr'}=$ckdt;$ckdt=$in{'sei-tel'} ; &tagck ; $in{'sei-tel'}=$ckdt;
$ckdt=$in{'tod-namek'} ; &tagck ; $in{'tod-namek'}=$ckdt;$ckdt=$in{'tod-namef'} ; &tagck ; $in{'tod-namef'}=$ckdt;$ckdt=$in{'tod-yubin'} ; &tagck ; $in{'tod-yubin'}=$ckdt;$ckdt=$in{'tod-addr'} ; &tagck ; $in{'tod-addr'}=$ckdt;$ckdt=$in{'tod-tel'} ; &tagck ; $in{'tod-tel'}=$ckdt;# のしのその他$ckdt=$in{'sonota'} ; &tagck ; $in{'sonota'}=$ckdt;# のし紙のその他名$ckdt=$in{'sonotanm'} ; &tagck ; $in{'sonotanm'}=$ckdt;
print '<TABLE BORDER="1" WIDTH="70%">'."\n";print '<TR>';print '<TH ALIGN="LEFT" VALIGN="MIDDLE">お名前(漢字)</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";print $in{'ira-namek'};print ' 様';print '</TD></TR>';
print '<TH ALIGN="LEFT" VALIGN="MIDDLE">お名前(ふりがな)</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";print $in{'ira-namef'};print '</TD></TR>';
print '<TH ALIGN="LEFT" VALIGN="MIDDLE">郵便番号</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";print $in{'ira-yubin'};print '</TD></TR>';
print '<TH ALIGN="LEFT" VALIGN="MIDDLE">ご住所</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";print $in{'ira-addr'};print '</TD></TR>';
print '<TH ALIGN="LEFT" VALIGN="MIDDLE">電話番号(市外局番から)</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";print $in{'ira-tel'};print '</TD></TR>';
print '<TH ALIGN="LEFT" VALIGN="MIDDLE">メールアドレス(半角入力)</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";print $in{'ira-email'};print '</TD></TR>';print '</TABLE>';
print '<FONT SIZE=5 COLOR=#0000FF>';print "** ご請求先 **"."\n";print '</FONT>';print '<BR>';print '<TABLE BORDER="1" WIDTH="70%">'."\n";print '<TR>';print '<TH ALIGN="LEFT" VALIGN="MIDDLE">お名前(漢字)</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";if (length($in{'sei-namek'}) > 1) { print $in{'sei-namek'}; print ' 様';}else { print 'ご依頼主様と同じ'; }print '</TD></TR>';
print '<TH ALIGN="LEFT" VALIGN="MIDDLE">お名前(ふりがな)</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";print $in{'sei-namef'};print '</TD></TR>';
print '<TH ALIGN="LEFT" VALIGN="MIDDLE">郵便番号</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";print $in{'sei-yubin'};print '</TD></TR>';
print '<TH ALIGN="LEFT" VALIGN="MIDDLE">ご住所</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";if (length($in{'sei-addr'}) > 1) { print $in{'sei-addr'}; }else { print 'ご依頼主様と同じ'; }print '</TD></TR>';
print '<TH ALIGN="LEFT" VALIGN="MIDDLE">電話番号(市外局番から)</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";print $in{'sei-tel'};print '</TD></TR>';
print '</TABLE>';
print '<FONT SIZE=5 COLOR=#0000FF>';print "** お届け先 **"."\n";print '</FONT>';print '<BR>';print '<TABLE BORDER="1" WIDTH="70%">'."\n";print '<TR>';print '<TH ALIGN="LEFT" VALIGN="MIDDLE">お名前(漢字)</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";if (length($in{'tod-namek'}) > 1) { print $in{'tod-namek'}; print ' 様';}else { print 'ご依頼主様と同じ'; }print ' 様';print '</TD></TR>';
print '<TH ALIGN="LEFT" VALIGN="MIDDLE">お名前(ふりがな)</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";print $in{'tod-namef'};print '</TD></TR>';
print '<TH ALIGN="LEFT" VALIGN="MIDDLE">郵便番号</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";print $in{'tod-yubin'};print '</TD></TR>';
print '<TH ALIGN="LEFT" VALIGN="MIDDLE">ご住所</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";if (length($in{'tod-addr'}) > 1) { print $in{'tod-addr'}; }else { print 'ご依頼主様と同じ'; }print '</TD></TR>';
print '<TH ALIGN="LEFT" VALIGN="MIDDLE">電話番号(市外局番から)</TH>'."\n";print '<TD ALIGN="LEFT" VALIGN="MIDDLE">'."\n";print $in{'tod-tel'};print '</TD></TR>';
print '<HR SIZE=3 WIDTH=100%>';print '<BR>';$sno=$in{'noshi'};if ($sno == 6) { $noshi[$sno] = $in{'sonota'} }print "のし:$noshi[$sno]"."\n";
print '<BR><BR>';$sno=$in{'noshinm'};if ($sno == 3) { $noshinm[$sno] = $in{'sonotanm'}; }print "のし紙のお名前:$noshinm[$sno]"."\n";# 送信用$noshimei=$noshinm[$sno];
print '<BR><BR>';$sno=$in{'shiharai'};print "お支払い方法:$shiharai[$sno]"."\n";# 送信用$shiharaimei=$shiharai[$sno];
print '<BR>';print '<HR SIZE=3 WIDTH=100%>';print "備考:$in{'bikou'}"."\n";print '<BR>';# 入力データの受け渡しprint '<input type=hidden name="ira-namek" value="'.$in{'ira-namek'}.'">' . "\n";print '<input type=hidden name="ira-namef" value="'.$in{'ira-namef'}.'">' . "\n";print '<input type=hidden name="ira-yubin" value="'.$in{'ira-yubin'}.'">' . "\n";print '<input type=hidden name="ira-addr" value="'.$in{'ira-addr'}.'">' . "\n";print '<input type=hidden name="ira-tel" value="'.$in{'ira-tel'}.'">' . "\n";print '<input type=hidden name="ira-email" value="'.$in{'ira-email'}.'">' . "\n";
print '<input type=hidden name="sei-namek" value="'.$in{'sei-namek'}.'">' . "\n";print '<input type=hidden name="sei-namef" value="'.$in{'sei-namef'}.'">' . "\n";print '<input type=hidden name="sei-yubin" value="'.$in{'sei-yubin'}.'">' . "\n";print '<input type=hidden name="sei-addr" value="'.$in{'sei-addr'}.'">' . "\n";print '<input type=hidden name="sei-tel" value="'.$in{'sei-tel'}.'">' . "\n";
print '<input type=hidden name="tod-namek" value="'.$in{'tod-namek'}.'">' . "\n";print '<input type=hidden name="tod-namef" value="'.$in{'tod-namef'}.'">' . "\n";print '<input type=hidden name="tod-yubin" value="'.$in{'tod-yubin'}.'">' . "\n";print '<input type=hidden name="tod-addr" value="'.$in{'tod-addr'}.'">' . "\n";print '<input type=hidden name="tod-tel" value="'.$in{'tod-tel'}.'">' . "\n";
print '<input type=hidden name="noshi" value="'.$noshimei.'">' . "\n";print '<input type=hidden name="shiharai" value="'.$shiharaimei.'">' . "\n";
print '<input type=hidden name="bikou" value="'.$in{'bikou'}.'">' . "\n";
# 漢字化けをおこすので、データと一緒に変数渡しするprint '<input type=hidden name="msgi" value="●ご依頼主">' . "\n";print '<input type=hidden name="msgs" value="●ご請求先">' . "\n";print '<input type=hidden name="msgt" value="●お届け先">' . "\n";
print '<input type=hidden name="msgi1" value="○お名前">' . "\n";print '<input type=hidden name="msgi2" value="○ふりがな">' . "\n";print '<input type=hidden name="msgi3" value="○郵便番号">' . "\n";print '<input type=hidden name="msgi4" value="○住所">' . "\n";print '<input type=hidden name="msgi5" value="○電話">' . "\n";print '<input type=hidden name="msgi6" value="○アドレス">' . "\n";print '<input type=hidden name="msgb1" value="■のし紙のお名前">' . "\n";print '<input type=hidden name="msgb2" value="■お支払い方法">' . "\n";print '<input type=hidden name="msgbk" value="■備考">' . "\n";
# 処理日時($t1,$t2,$t3,$sysdd,$sysmm,$sysyy,$t7) = localtime;# 年4桁化$sysyy = $sysyy + 1900;# 月補正$sysmm++;# 2桁にする$t1 = sprintf("%.2d",$t1);$t2 = sprintf("%.2d",$t2);$t3 = sprintf("%.2d",$t3);$nichiji = '送信日時:'.$sysyy.'年'.$sysmm.'月'.$sysdd.'日 '.$t3.'時'.$t2.'分';print '<input type=hidden name="time" value="'.$nichiji.'">' . "\n";
print '<input type=hidden name="action" value="send">' . "\n";print '<INPUT TYPE="submit" value="送信します">'."\n";print "</FORM>\n";
# 取消するprint '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="first">' . "\n";print '<INPUT TYPE="submit" value="取消">'."\n";print "</FORM>\n";
}
## タグの無効化サブルーチン#sub tagck {$ckdt =~ s/</</ig;$ckdt =~ s/>/>/ig;$ckdt =~ s/<!--.*-->//ig;}
########################################### ## 入力されたデータのチェックルーチン ## ###########################################
sub check {
# 名前チェックif ($in{'ira-namek'} eq "" ) { &error(1); }
# 住所チェックif ($in{'ira-addr'} eq "") { &error(2); }
# 電話またはemailどちらか必須if ($in{'ira-tel'} eq "" && $in{'ira-email'}) { &error(3); }# 電話番号チェックif (length($in{'ira-tel'}) < 10) { &error(5); }
# 英数字と@と.と_と-(大文字と小文字の違いを無視するiフラグ)if ($in{'ira-email'} =~ /[^a-z0-9@._-]/i) { &error(4); }
# メールアドレスが入力されたとき1つの@とその後ろに.が含まれているばOKでそうでないならエラーif ($in{'ira-email'} ne "") { if (!($in{'ira-email'} =~ /.*\@.*\..*/)) { &error(4); }}
# メールアドレスが短すぎる場合if ($in{'ira-email'} ne "") {if (length($in{'ira-email'}) < 6) { &error(4); }}
# チェック通過
&kakunin; } # check
############################################## ## チェックエラー表示画面ルーチン # # ##############################################
sub error {
# &error(xx); で呼び出されたルーチンは、()内の数字が $error に代入される。
$error = $_[0];
if ($error eq "1") { $error_msg = 'ご依頼主のお名前が正しく入力されていません。'; }
elsif ($error eq "2") { $error_msg = 'ご依頼主のご住所が正しく入力されていません。'; } elsif ($error eq "3") { $error_msg = 'ご依頼主の電話番号又はメールアドレスどちらかはご入力下さい。'; }
elsif ($error eq "4") { $error_msg = 'ご依頼主のメールアドレスが正しく入力されていません。'; }
elsif ($error eq "5") { $error_msg = 'ご依頼主の電話番号が正しく入力されていません。'; }
print '<html><head><title>注文データ入力の練習2</title></head>' . "\n"; print '<body bgcolor="#ff66ff" text="#000000" LINK="#0000ff" VLINK="#ff8888" ALINK="#FF0000">' . "\n"; print '<h2>注文データ入力の練習2で下記のエラーが発生しました</h2>' . "\n"; print "<i>$error_msg</i>\n";
print '<BR>';# リロードでもどると入力データが消えてしまうので print 'ブラウザ画面の戻るをクリックする'."\n";;
if ($test eq "on") {print '<BR>';print '<font size="5"><b>入力の確認表示</b></font><p>' . "\n";print '<BR>';
print 'action: '.$in{'action'}.''."\n";print '<BR>';print 'name: '.$in{'name'}.''."\n";print '<BR>';print 'email: '.$in{'email'}.''."\n";print '<BR>';print 'biko: '.$in{'comment'}.''."\n";print '<BR>';} # if
print '<p></body></html>' . "\n";exit;
} # error
############################################## ## メール送信ルーチン # # ##############################################
sub sendmail {# 注文商品数$kensu=$in{'kensu'};
open(MAIL,"|$sendmail $myaddress");
$message = <<EOM;---- start of message ----------------------------------------Subject: orderk2からご注文がありましたReply-To: $in{'email'}
$in{'time'}
EOM
# メール送信はJISと決められている&jcode'convert(*message,'jis');print MAIL $message;
# 注文明細送信for ($i=1; $i<=$kensu; $i++) {$msg=$in{'order'.$i};&sendmsg;} # end of for
$message = <<EOM;$in{'total'}$in{'tax'}$in{'goukei'}----------------------------------------------------------$in{'msgi'}$in{'msgi1'}$in{'ira-namek'}
$in{'msgi2'}$in{'ira-namef'}
$in{'msgi3'}$in{'ira-yubin'}
$in{'msgi4'}$in{'ira-addr'}
$in{'msgi5'}$in{'ira-tel'}
$in{'msgi6'}$in{'ira-email'}----------------------------------------------------------$in{'msgs'}$in{'msgi1'}$in{'sei-namek'}
$in{'msgi2'}$in{'sei-namef'}
$in{'msgi3'}$in{'sei-yubin'}
$in{'msgi4'}$in{'sei-addr'}
$in{'msgi5'}$in{'sei-tel'}----------------------------------------------------------$in{'msgt'}$in{'msgi1'}$in{'tod-namek'}
$in{'msgi2'}$in{'tod-namef'}
$in{'msgi3'}$in{'tod-yubin'}
$in{'msgi4'}$in{'tod-addr'}
$in{'msgi5'}$in{'tod-tel'}----------------------------------------------------------$in{'msgb1'}$in{'noshi'}
$in{'msgb2'}$in{'shiharai'}
$in{'msgbk'}$in{'bikou'}---- end of message ----------------------------------------EOM
# メール送信はJISと決められている&jcode'convert(*message,'jis');
print MAIL $message;close(MAIL);
# 依頼主への確認メール
# 実際に使用する場合は、if{ }をカットしてください# ここからif ($test eq "on") {
open(MAIL,"|$sendmail $in{'ira-email'}");
$message = <<EOM;Subject: orderk2からのご注文確認(練習です)Reply-To: $myaddress
&jcode'convert(*message,'jis');print MAIL $message;
for ($i=1; $i<=$kensu; $i++) {$msg=$in{'order'.$i};&sendmsg;} # end of for
} # ここまで
print "Content-type: text/html\n\n";print "<HTML>\n";print "<HEAD>\n";print "<TITLE>orderk1.cgi </TITLE>\n";print "</HEAD>\n";print '<BODY BACKGROUND="'.$dir.'bg1.gif">'."\n";
print '送信を完了しました。ありがとうございました'."\n";
print '<form method="post" action="' . $reload . '">' . "\n";print '<input type=hidden name="action" value="first">' . "\n";
print '<INPUT TYPE="submit" value="最初の画面に戻ります">'."\n";print "</FORM>\n";print "</BODY>\n";print "</HTML>\n";} # end of sendmail
####################### sendmailルーチン #######################sub sendmsg {# メール送信はJISと決められている$msg=$msg."\n"; # 改行させる&jcode'convert(*msg,'jis');print MAIL $msg;} # end of sendmsg####################### end ###########################
このサイトはreCAPTCHAによって保護されており、Googleの プライバシーポリシー と 利用規約 が適用されます。
1文字以上入力してください
本文は少なくとも1文字以上必要です。
1文字以上入力してください。
下から選んでください: