E第9回 基礎プログラミング II レポート課題 氏名:遠藤裕貴 学籍番号:c1090294 語学クラス:中国語 コース(系):政策マネ 1 A と入力すると作成できる。 type で、ラジオボタンと設定する。ラジオボタンは1つだけ選ぶボタン。 name は、使うラジオボタンを区別するためのもの。 value で、ユーザーが選んだ値がプログラムに送られる。 input tag に checked を入力すると、自動的に既定値に設定される。 チェックされた項目をプログラム.rb で表示されるようになる。 B と入力すると作成できる。 type で、チェックボックスと設定する。チェックボックスは選択肢をいくつか 選べるボタン。 name は、使うチェックボックスを区別するためのもの。 value で、ユーザーが選んだ値がプログラムに送られる。 name="チェックボックスの名前"で決まったCGI変数の値を、プログラム.rb で作っ た配列に送られ、Webページで表示されるようになる。 2 全てのリンク先 http://roy.e.koeki-u.ac.jp/~c109029/advertise2/rubycgi/fork.html A リンク先 http://roy.e.koeki-u.ac.jp/~c109029/advertise2/rubycgi/counter.rb ◯設定 どれだけの人がきたかをカウントするプログラム ◯入力部分と送信結果を表示する部分 fork.rb #!/usr/koeki/bin/ruby require 'cgi' cgi = CGI.new("html4") print("Content-type: text/html; charset=EUC-JP\n\n") arv = cgi["arrive"] count = 0 #カウンターは0から始まる open("list.txt","r") do |read| #データを読みこみ開いてreadという名前に置き換える while data = read.gets #繰り返し if /(\d+)/ =~ data count = $1.to_i end #ifに対するend end #whileに対するend end #openに対するend print("\n") print("
\n") print("庄内へようこそ
\n") print("\n") print("\n") count += 1 open("list.txt","w") do |write| write.printf("%d\n",count) end ◯解説 arv = cgi["arrive"] データをarvに代入する open("list.txt","r") do |read| while data = read.gets if /(\d+)/ =~ data count = $1.to_i end end end このopenでデータを読みこみモードを開いて現在のデータの数字をcountに代入 する count += 1 人数を1ずつ足していく open("list.txt","w") do |write| write.printf("%d\n",count) end このopenでデータを書込みモードで開いて、counterに1を足した数を代入する ◯実行結果 roy{c109029}% ./counter.rb [~/public_html/advertise2/rubycgi] (offline mode: enter name=value pairs on standard input) Content-type: text/html; charset=EUC-JP再見 zaijian !!
roy{c109029}% ./counter.rb [~/public_html/advertise2/rubycgi] (offline mode: enter name=value pairs on standard input) Content-type: text/html; charset=EUC-JP再見 zaijian !!
roy{c109029}% cd [~/public_html/advertise2/rubycgi] ◯考察 roy内では実行できましたがweb内ではカウント数が変わりませんでした。 ktermでchmod o+w counter.rb をしましたが解決出来ませんでした。 D リンク先 http://roy.e.koeki-u.ac.jp/~c109029/advertise2/rubycgi/color.html ◯設定 色を選択してOKを押すと文字の色が変わるラジオボタンプログラム ◯入力部分と送信結果を表示するプログラム ・color.html