HTMLフォームの単一選択のメニューで選択された値を取得し表示します。
#!/usr/bin/python
# -*- coding: utf-8 -*-
'''
選択されたメニューの項目を取得する(単一選択の場合)
'''
html = '''Content-Type: text/html
<html>
<head>
<title>選択されたメニューの項目を取得する(単一選択の場合)</title>
</head>
<body>
<h1>選択されたメニューの項目を調べる</h1>
<p>入力された項目は、「%s」です。</p>
<form action="test11.cgi" method="post">
<select name="lang">
<option value="python">python</option>
<option value="perl">perl</option>
<option value="ruby">ruby</option>
</select>
<input type="submit" />
</form>
'''
import cgi
f = cgi.FieldStorage()
print html % f.getfirst('lang', '')
import cgi
f = cgi.FieldStorage()
HTMLフォームから送信された値は、cgiモジュールのFieldStorageクラスを使用して取得します。
選択されたメニューの項目を取得するには、FieldStorageクラスの getfirst() を使用します。
メニューが選択されると、メニューの name 属性に対して、選択された項目の value 属性の値が設定されます。
print html % f.getfirst('lang', '')
lang の値を取得し(値がないときは'')、文字列フォーマットの %s と置き換えて出力します。