#!/usr/bin/env perl print "Content-Type:text/html; charset=UTF-8\n\n"; print "<html><body>\n"; print "<h3>環境変数</h3><table border=1>\n"; print "<tr><th>変数名</th><th>値</th></tr>"; foreach(sort keys %ENV) { print "<tr><td>$_</td><td>$ENV{$_}</td></tr>\n"; } print "</table>"; print "<h3>標準入力</h3><table border=1>\n"; while(<>) { print "<tr><td>$_</td></tr>\n"; } print "</table>"; print "</body></html>";
<form method=get action="printenv.cgi"> <input type=text size=4 name="tuis" value="100"> <input type=submit value="上のCGIにフォームからパラメータを渡してみる"> </form>このフォームのHTMLは以下の通り。
<form method=post action="printenv.cgi"> <input type=text size=4 name="tuis" value="100"> <input type=submit value="上のCGIにフォームからパラメータを渡してみる"> </form>
課題1 上記 printenv.cgi をGETメソッド、POSTメソッドを使って実行した場合の違いを説明せよ。
課題2 id と name という2つのコントロールを設けたフォームを作り、printenv.cgiを 実行するようにせよ。そして、それらのコントロールがGETメソッドとPOSTメソッドでどのように渡されるかを説明せよ。
課題3 「formの作成の課題1」で作成したフォームのアクションを printenv.cgiに変更し、コントロールの内容がどのように渡されるかを書け。
課題4 課題3の内容を変更し、 GETメソッドでprintenv.cgiを呼び出すようにせよ。 そして、コントロールの内容がどのように渡されるかを書け。