第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

■チェックボックス