第4章 データの送受信
4.1 HTMLフォームを使ったデータの入力
クライアントのブラウザに表示されているWebページからデータを入力して、Webサーバにデータを送信することができます。このとき、HTMLの<FORM>タグを使います。<FORM>タグを使ったデータの入力様式をHTMLフォームといいます。HTMLフォームにはたとえば次のような様式があります。
■メソッド
HTMLフォームは<FORM>タグで始まり、</FORM>タグで終わります。<FORM>タグでは、WebページからWebサーバに向けてどのような方法でデータを送信するのか送信方法を指定する必要があります。これをメソッドといいますメソッドにはGETメソッドとPOSTメソッドがあります。
また、Webサーバに送信したデータをどのASPファイルに引き継ぐのかも指定する必要があります。これにはACTIONオプションを使います。
ASPでは、ASPファイル単位で処理が進みます。図4.1に示すようにWebサーバで一つのASPファイルが実行されると、クライアントのブラウザに1ページのWebページが表示されます。そのWebページでボタンをクリックしたり、ハイパーリンクをクリックすると、Webサーバ上で次のASPファイルが選択され実行されます。そのときに、Webページから次のASPファイルにメソッドによりデータが引き継がれます。

図4.1
■GETメソッド
GETメソッドを使う場合、次のように記述します。
<FORM METHOD="get" ACTION="file.asp">
つまり、これから記述するHTMLフォームのデータは送信ボタンがおされたときに、GETメソッドを用いて”file.asp”というASPファイルに引き継ぎなさいという意味になります。GETメソッドの場合、引き継がれるデータはURLに付加された形でWebサーバに送信され、次のASPファイルに渡されます。たとえば、
URL http://www.abc.com/apl/file2.asp?Menu=main&ID=12
の場合は、次に実行されるASPファイルは"www.abc.com"というWebサーバの"/apl/file2.asp"というASPファイルで、引き継ぐデータはMenuという変数の値が"main"で、IDという変数の値が12ということになります。
【注意】
METHOD="get"はMETHOD="GET"と記述しても、METHOD=GETと記述してもOKです。
■POSTメソッド
POSTメソッドを使う場合、次のように記述します。
<FORM METHOD="post" ACTION="file.asp">
つまり、これから記述するHTMLフォームのデータは送信ボタンがおされたときに、POSTメソッドを用いて”file.asp”というASPファイルに引き継ぎなさいという意味になります。POSTメソッドの場合、引き継がれるデータは標準入出力によりWebサーバに送信され、次のASPファイルに渡されます
■テキスト
図4.2のASPファイルform.aspは1行のテキストを入力するHTMLフォームをWebページに表示するためのASPファイルです。
<INPUT NAME="Data" SIZE=20>
は、テキスト入力フォームを表示するためのHTMLタグで、TYPE="text"が省略されています。NAMEは入力されたデータを格納する変数名です。SIZEはテキスト入力欄の長さを半角文字数で示します。
<INPUT TYPE="submit" VALUE=" OK ">
は、送信ボタンを表示するためのHTMLタグです。ボタンにはVALUEの値が表示されます(図4.4)。

図4.2
図4.2のASPファイルでは、「OK」ボタンがクリックされると、次にform2.aspファイルを起動するようになっています。図4.3はそのform2.aspファイルのリストです。
<%=Request.Form("Data")%>
は、HTMLフォームの中の変数"Data"の値を取得(受信)するための文です。ここでは、受信したデータをそのままWebページに表示するようにしています。
【注意】
<%=Request.Form("Data")%>
をResponse.Write文を用いて記述する場合は、次のように記述します。
<% Response.Write Request.Form(""Data"") %>
つまり、変数名の文字列を示す(")は("")と2重に記述する必要があります。

図4.3
図4.2のform.aspファイルにアクセスすると、図4.4のWebページが表示されます。

図4.4
テキスト入力欄に文字を記述し(図4.5)、「OK」ボタンをクリックすると、図4.3のform2.aspファイルが起動され、form2.aspファイルは図4.6のWebページを生成します。

図4.5
入力された文字列"今日は"が、正しく引き継がれていることがわかります。

図4.6
■ラジオボタン
図4.7のform3.aspファイルは、ラジオボタンを表示するためのASPファイルの例です。次に起動するファイルとしては、前と同じform2.aspファイルを使用しています。
同じNAMEをもつINPUTタグで一つのグループを作り、その内の一つが排他的に選択されます。
<INPUT TYPE="radio" NAME="Data" VALUE="男">1.男

図4.7
図4.7のform3.aspファイルにアクセスすると、図4.8のWebページが表示されます。

図4.8
たとえば、"1.男"をオンにして、「OK」ボタンをクリックすると、変数"Data"には"男"が代入されていることがわかります。

図4.9

図4.10
【メモ】
選択された項目の値を文字列でなく、数値にする場合は、図4.11のようにします。
図4.11
結果は、図4.12のようになります。
図4.12
■チェックボックス