2.3. フォームのデータを受け取る


今回はフォームで送られてきたデータの扱い方を学びます。
今回は先にプログラムを見てそれを解析します。

今回はHTML部分とプログラム部分とにわかれていますので注意して下さい。

-- HTML 始まり -- html231.htm

<html>

<head>

<title></title>

</head>

<body>



<form action="test231.cgi" method="POST">

<input type="text" name="senddata">

<input type="submit" value="送信">

</form>



</body>

</html>

-- HTML 終わり --

-- プログラム 始まり -- test231.cgi

#!/usr/local/bin/ruby

print "Content-type: text/html\n\n"

require "cgi-lib"

input = CGI.new



inputdata = input["senddata"]

print "<html><body>inputdata = #{inputdata}</body></html>"

-- プログラム 終わり --

この二つのファイルをアップして実行属性を付けてください。
まずhtml231.htmをWeb上で見ます。
テキストボックスと送信と書いたボタンが出てきますので
テキストボックスに「hello」と入力して送信ボタンを押してください。
そうすると画面に「inputdata = hello」と表示されます。
html231.htmのテキストボックスに入れる言葉をいろいろと変えると
CGIの表示もいろいろと変わります。

ではプログラムの説明です。
html231.htmはHTMLのわかる方なら特に問題はないと思いますが説明は飛ばします。
test231.cgiでは1行目、2行目は決り文句です。
3、4行目はフォームで文字を受け取る際の決り文句のような物です。
rubyでは便利な事にCGI用のフォームのデコード用のパッケージが用意されています。
3行目でこれを呼び出し、4行目でそれの初期化とinputへの連結を行っています。
ここはよく意味がわからない場合は読み飛ばしちゃっていいです。
フォームを受け取る際の決り文句だと思ってかまいません。

6行目でinputdataにフォームのsenddataの文字を入れています。
7行目でそれの表示です。

自分の打ち込んだ文字が表示されるというのは非常にインタラクティブですよね。
なんとなく掲示板も見えてきた感じですね。

今回はフォームのデータの受け取り方を学びました。


今回始めて使った命令など

| | メニュー戻る | |

LinkExchange Japan
LinkExchange Japan Member