うまくいかないときには、 まずプログラムの属性を調べる。
-rwxr-xrwx 1 ta05001 users 4321 Nov 26 2006 動くプログラム.rb
となっていなければ、chmod 忘れである。 文法自体がどこかで間違っている場合もある。 次のようにすると調べることができる。
pan{c10xyyy}% ssh roy c10xyyy's password: roy で Emacs を使うときのパスワード roy{c10xyyy}% ˜/public_html/rubycgi roy{c10xyyy}% ./ticket.rb
実際に使用している directory まで行って起動させる。
(offline mode: enter name=value pairs on standard input)
とデバッグモードになるので、cgi["CGI 変数"]と書いた CGI 変数の部分に、 具体名を書いて実行する。ここでは arrive を選ばせていたので、
arrive="東京"
と指定してみる。全ての CGI 変数を入力したら Ctrl d とする。 プログラムやHTML 文書に誤りがなければ
Content-type: text/html; charset=EUC-JP <html> <head> <title>オンライン券売機</title> </head> <body> <h1>到着駅: 東京</h1> </body> </html>
と出力されるはずである。 これがうまくいったら、実際に実行しても動くプログラムになっているはずである。
次週は、アンケート集計結果を表示するプログラムを作る。 今回のアンケート結果は こちら。