第10回 基礎プログラミング II レポート課題 氏名:久保田 瑛一郎 学籍番号:c109058 語学クラス:英語1 コース:社会福祉 1筆記問題 リンクアドレス http://roy.e.koeki-u.ac.jp/~c109058/advertise2/rubycgi/dat/rpt_10.html pstoreの解説をするためにrpt_10.rb htmlを作成した ml側
rb側 #以降を解説とする#!/usr/koeki/bin/ruby #!/usr/koeki/bin/ruby require 'cgi' #CGIを使うということを宣言する require 'pstore' #PStore(データベースに書きこむこと)を使うということを宣言する cgi=CGI.new("html4") #変数cgiはCGIである。そのときhtml4という規格で書込みをする db =PStore.new("rpt_10.db") #変数dbにはいってくるものはデータベースとして書きこむ。その時書きこむ先はrpt_10.dbである tubuyaki=cgi["twt"] #外部データ(html出入力されたもの)のtwtはtubuyakiとする(コピーする) name=cgi["namae"] #外部データ(html出入力されたもの)のnamaeはnameとする(コピーする) print("Content-type: text-html; charest=EUC-jp\n\n") #書込みをする準備と文字化け防止 print("\n") #htmlのはじまりであることを宣言する print("\n") #headのはじまりであることを宣言する print("%sさんのただいまのつぶやき:%s
\n",name,tubuyaki) #確認表示 db.transaction do #トランザクション処理(複数の処理をまとめたもの) if db== nil #もしデータベースがからっぽだったら db[name]=Hash.new #ハッシュ(●●といえば●●)を用意する end #ifのおわり db[name]=tubuyaki #今回のデータをいれる(dbというグループに入れる) alldate=db.roots #今回のもふくめた全部のデータを見やすくするために別の袋にコピーした for kobetu in alldate #その袋に入れたデータを更に取りだし易くするためにkobetuという袋に分ける printf("%sさん:%s
\n",kobetu,db[kobetu]) #結果を全て出す end end print("\n") #本文のおわりであることを宣言する) print("\n") #htmlの終わりであることを宣言する 実行結果 roy{c109058}% ./rpt_10.rb [~/public_html/rubycgi/dat] (offline mode: enter name=value pairs on standard input) namae="kubo" twt="現在、午前1時48分!!" Content-type: text-html; charest=EUC-jpkuboさんのただいまのつぶやき:現在、午前1時48分!!
さん:
kuboさん:現在、午前1時48分!!
参考文献 IT用語辞典 トランザクションとは http://e-words.jp/w/E38388E383A9E383B3E382B6E382AFE382B7E383A7E383B3.html プログラム問題 Aリンクアドレス→http://roy.e.koeki-u.ac.jp/~c109058/advertise2/rubycgi/tubuyaki.html 1ツイッター的つぶやきプログラム B作成の意図 現代のコミュニケーションの手段は情報技術の革新により多様化して来ている 今回は中でもすぐに自分の思ったことがつぶやけるツイッター的プログラムを作 成した。 C解説 tubuyaki.html 送る \n") #htmlであることを宣言する toukou.print("\n") #headのはじまりであることを宣言する toukou.print("\n") #css設定 toukou.print("No:%s ニックネーム:%s