ソースコードを見る: フォームと CGI

1   <HTML>
2   <HEAD>
3   <TITLE>フォーム例</TITLE>
4    
5   <STYLE TYPE="text/css">
6    
7   .surveyTitle  {font-family: MS Pゴシック;
8                  font-size: 18pt;
9                  font-weight: 800;
 10                 }
11   </STYLE>
12   </HEAD>
13    
14   <BODY BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#FF0000" VLINK="#006600">
15    
16   <IMG SRC="logo.gif" ALIGN="bottom" WIDTH="75" HEIGHT="84">
17   <SPAN CLASS="surveyTitle">お客様アンケート</SPAN>
18   <HR>
19    
20   <BLOCKQUOTE>
21   <P>
22   この送信フォームは、DBA Logo, Inc. という架空の会社がアンケートを実施する場合の例です。
23   </P>
24    
25   <P>
26   このテクニックを実際に試すには、送信したフォームを処理するために perl がインストールされているサーバ(UNIX のweb サーバにはたいていの場合 perl がインストールされています)に perl スクリプトを設置しなければなりません。必要に応じてフォームを変更する方法や、 CGI スクリプトをサーバに設置する方法については、Dreamweaver と mailform.cgi を使ってメール送信フォームを作成するをご覧ください。
27   </P>
28    
29   <FORM ACTION="mailform.cgi" METHOD="post">
    <!--
FORM タグの ACTION 属性は、フォームの処理を実行するスクリプトを指定するのに使用します。この例では、フォームの内容は、mailform.cgiに送られます。このサンプルを実際に試すには、mailform.cgi をサーバに設置して、nobody が実行できるようにパーミッションを(755 などに)設定します(通常デフォルトでは 644 などになっています)。詳細は、サーバの管理者にお尋ねください。

METHOD 属性に指定できる値は、「get」および「post」の2種類です。「get」を指定すると、フォームの内容は URL の QUERY_STRING フィールドにセットされ、「post」を指定すると標準入力に送られます。mailform.cgi は post METHOD でデータを受け取ることを想定しています。
-->

30    
31   <INPUT TYPE="hidden" NAME="mailto" VALUE="you@yourdomain.com">
    <!--
mailform.cgi は上の隠しフィールドの内容を読み込んで、メールの送信先を指定します。フォームを提出すると、ここで指定したメールアドレスにメールが送信されます。複数の受信者を設定するには、アドレスをコンマで区切って記述します。
-->
32   <INPUT TYPE="hidden" NAME="subject" VALUE="アンケートの回答">
    <!--
mailform.cgi は上の隠しフィールドの内容を読み込んで、メールの subject を指定します。VALUE 属性を使って、フォームから送信されたメールだということが確実にわかるような subject を指定すると、メールのフィルタリングをする場合などに便利です。
-->
33    
34   <TABLE BORDER="0" CELLSPACING="5" CELLPADDING="3" WIDTH="80%">
    <!--
注意:フォームの各フィールドは、TABLE タグの内側にあってもかまいませんが、FORM タグは TABLE タグの外におくことが必要です。
-->
35   <TR VALIGN="top">
36   <TD ALIGN="right">お名前:</TD>
37   <TD ALIGN="left"><INPUT TYPE="text" NAME="Name" SIZE="40,1" VALUE=""></TD>
    <!--
mailform.cgi は上のフィールドを読み込みますが、その内容はメールの本文には出力されません。現状では、このフィールドはメールのヘッダの From: 行に出力されます。内容を、メールの本文にも出力するにはフィールドの名前を「F + 番号 + アンダースコア(_) + フィールド名」という形式(F01_Name など)に変更します。
-->
38   </TR>
39    
40   <TR VALIGN="top">
41   <TD ALIGN="right">E-mail:</TD>
42   <TD ALIGN="left"><INPUT TYPE="text" NAME="E-mail" SIZE="40,1" VALUE=""></TD>
43   </TR>
44    
45   <TR VALIGN="top">
46   <TD ALIGN="right">よくご利用になる DBA Logo 製品:</TD>
47   <TD ALIGN="left"><SELECT NAME="F01_Product_used_most_often">
48   <OPTION>Container Corn
49   <OPTION>The Wand Widget
50   <OPTION>Labelicker
51   <OPTION>Master Mailer
52   <OPTION>StampIt
53   </SELECT></TD>
54   </TR>
55    
56   <TR VALIGN="top">
57   <TD ALIGN="right">ご購入方法:</TD>
58   <TD ALIGN="left"><INPUT TYPE="checkbox" NAME="F02_Buys_product_from" VALUE="カタログ">カタログ販売<BR>
59   <INPUT TYPE="checkbox" NAME="F02_Buys_product_from" VALUE="スーパー">スーパー<BR>
60   <INPUT TYPE="checkbox" NAME="F02_Buys_product_from" VALUE="バラエティショップ">バラエティショップ<BR>
61   <INPUT TYPE="checkbox" NAME="F02_Buys_product_from" VALUE="ホームページ">DBA Logo のホームページ</TD>
62   </TR>
63    
64   <TR VALIGN="top">
65   <TD ALIGN="right">インターネットのご利用は:</TD>
66   <TD ALIGN="left"><INPUT TYPE="checkbox" NAME="F03_Connects_to_Internet_from" VALUE="自宅">ご自宅から<BR>
67   <INPUT TYPE="checkbox" NAME="F03_Connects_to_Internet_from" VALUE="職場">職場から<BR>
68   <INPUT TYPE="checkbox" NAME="F03_Connects_to_Internet_from" VALUE="図書館/コミュニティセンター">図書館、コミュニティセンターから<BR>
69   <INPUT TYPE="checkbox" NAME="F03_Connects_to_Internet_from" VALUE="インターネットカフェ">インターネットカフェから<BR>
70   <INPUT TYPE="checkbox" NAME="F03_Connects_to_Internet_from" VALUE="その他">その他</TD>
71   </TR>
72    
73   <TR VALIGN="top">
74   <TD ALIGN="right">職場からのご利用頻度:</TD>
75   <TD ALIGN="left"><INPUT TYPE="radio" NAME="F04_Shops_at_work" VALUE="1週間に1回程度">1週間に1回程度<BR>
76   <INPUT TYPE="radio" NAME="F04_Shops_at_work" VALUE="1ヶ月に1回程度">1ヶ月に1回程度<BR>
77   <INPUT TYPE="radio" NAME="F04_Shops_at_work" VALUE="職場からは利用しない">職場からは利用しない</TD>
78   </TR>
79    
80   <TR VALIGN="top">
81   <TD ALIGN="right">職場からご利用になる理由:</TD>
82   <TD ALIGN="left"><INPUT TYPE="checkbox" NAME="F05_Shops_at_work_because" VALUE="アクセスが快適">職場からの方が快適にアクセスできる<BR>
83   <INPUT TYPE="checkbox" NAME="F05_Shops_at_work_because" VALUE="便利">職場から利用した方がなにかと便利<BR>
84   <INPUT TYPE="checkbox" NAME="F05_Shops_at_work_because" VALUE="自宅にはコンピュータがない">自宅にはコンピュータがないから<BR>
85   <INPUT TYPE="checkbox" NAME="F05_Shops_at_work_because" VALUE="その他">その他<BR>
86   <INPUT TYPE="checkbox" NAME="F05_Shops_at_work_because" VALUE="職場からは利用しない">職場からのオンラインショッピングはしない</TD>
87   </TR>
88    
89   <TR VALIGN="top">
90   <TD ALIGN="right">コメント:</TD>
91   <TD ALIGN="left"><TEXTAREA NAME="F06_Comments" ROWS="5" COLS="40" WRAP="virtual"></TEXTAREA></TD>
92    
93   <TR VALIGN="top">
94   <TD ALIGN="right"></TD>
95   <TD ALIGN="left"><INPUT TYPE="Reset" VALUE="やり直し"> <INPUT TYPE="Submit" VALUE=" 送信 "></TD>
96   </TR>
97   </TABLE>
98   </FORM>
99   </BLOCKQUOTE>
100    
101   </BODY>
102   </HTML>