#!/usr/bin/env ruby # -*- coding: utf-8 -*- require 'cgi' c = CGI.new(:accept_charset => "UTF-8") print "Content-type: text/html; charset=UTF-8\n\n" #<input type="text" name="answer" maxlength="40" <br> nendo=c["nendo"] gakkou=c["gakkou"] gakunen=c["gakunen"] kurasu=c["kurasu"] han=c["han"] i=c["i"].to_i name=c["name"] var1=c["tenshi"] var2=c["go"] time=c["time"] open("tenshi.csv","a:utf-8") do |tenshi| tenshi.printf("%d,%s,%s,%s,%d,%s,%d,%d,%d,%d\n",time,name,var1,var2,nendo,gakkou,gakunen,kurasu,han,i) end i==0 kekka=Hash.new require'csv' date=CSV.read("tenshi.csv", :headers=>false, encoding: 'utf-8') date.each do |row| if row[4]==nendo&&row[5]==gakkou&&row[6]==gakunen&&row[7]==kurasu&&row[8]==han if kekka.key?(row[1]) == false #その人のデータがまだ代入されていなければ kekka[row[1]]=Array.new #valueを配列にする end kekka[row[1]]<<[row[0],row[9],row[2],row[3]] #<<で配列の末尾に右辺を追加 i+=1 end end p kekka a=0 zahyo=[] for hoge,akumado in kekka a+=1 p a for result in akumado if result[1] == "1" case1 = result zahyo[a]=[hoge,case1[2].to_i] elsif result[1] == "2" case2 = result zahyo[a] << case2[2].to_i elsif result[1] == "3" case3 = result zahyo[a] << case3[2].to_i end end printf("<p>%sさんの結果 1回目:悪魔・天使度 %d GO&STOP %s</p>\n",hoge,case1[2],case1[3]) printf("<p>%sさんの結果 2回目:悪魔・天使度 %d GO&STOP %s</p>\n",hoge,case2[2],case2[3]) printf("<p>%sさんの結果 3回目:悪魔・天使度 %d GO&STOP %s</p>\n",hoge,case3[2],case3[3]) end if a==1 zishaku1="zishaku.red.png" elsif a==2 zishaku1="zishaku.red.png" zishaku2="zishaku.blue.png" elsif a==3 zishaku1="zishaku.red.png" zishaku2="zishaku.blue.png" zishaku3="zishaku.green.png" elsif a==4 zishaku1="zishaku.red.png" zishaku2="zishaku.blue.png" zishaku3="zishaku.green.png" zishaku4="zishaku.purple.png" elsif a==5 zishaku1="zishaku.red.png" zishaku2="zishaku.blue.png" zishaku3="zishaku.green.png" zishaku4="zishaku.purple.png" zishaku5="zishaku.lightblue.png" elsif a==6 zishaku1="zishaku.red.png" zishaku2="zishaku.blue.png" zishaku3="zishaku.green.png" zishaku4="zishaku.purple.png" zishaku5="zishaku.lightblue.png" zishaku6="zishak.yello.png" end print"<div class=\"blue\">\n" print"<p>1</p>\n" print"<p>2</p>\n" print"<p>3</p>\n" print"<p>4</p>\n" print"<p>5</p>\n" print"<p>6</p>\n" print"<p>7</p>\n" print"<p>8</p>\n" print"<p>9</p>\n" print"</div>\n" print"<div class=\"red\">\n" print"<p>1</p>\n" print"<p>2</p>\n" print"<p>3</p>\n" print"<p>4</p>\n" print"<p>5</p>\n" print"<p>6</p>\n" print"<p>7</p>\n" print"<p>8</p>\n" print"<p>9</p>\n" print"</div>\n" print"<div class=\"green\">\n" print"<p>1</p>\n" print"<p>2</p>\n" print"<p>3</p>\n" print"<p>4</p>\n" print"<p>5</p>\n" print"<p>6</p>\n" print"<p>7</p>\n" print"<p>8</p>\n" print"<p>9</p>\n" print"</div>\n" p zahyo zishaku_y = [0,25,80,135,190,245,300,355,410,465] zishaku_x = [0,50,75,100,125,150,175] p zishaku_x[zahyo[1][1]] p zishaku_y[zahyo[1][1]] print"<html><head><title>結果</title></head><body>\n" print"<style>\n" print"body {padding: 10px; color: #; background-image: url(back.jpg)}\n" print"h1{color: #cc33ff; padding:10px; border: 0px solid#000000; background-color:#99ffff++} address {text-align: right}\n" print"h2{color: #cc33ff; padding:5px; border: 0px solid#000000; background-color:#99ffff} address {text-align: right}\n" print"h3{color: #cc33ff; padding:3px; border: 0px solid#000000; background-color:#99ffff} address {text-align: right}\n" print"p{color: #cc33ff; padding:0px; border: 0px solid#000000; margin-top:33px} address {text-align: right}\n" print".blue{background-color:#99ffff; border:1px solid #000000; width:220;height:530 ; padding-left:10px; float:left; margin-right:60px; background-image: url(#{zishaku1}), url(#{zishaku2}), url(#{zishaku3}), url(#{zishaku4}), url(#{zishaku5}), url(#{zishaku6}), url(secondzu.red.png); background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat; background-position: #{zishaku_x[zahyo[1][1]]}px #{zishaku_y[zahyo[1][1]]}px, #{zishaku_x[zahyo[2][1]]}px #{zishaku_y[zahyo[2][1]]}px, #{zishaku_x[zahyo[3][1]]}px #{zishaku_y[zahyo[3][1]]}px, #{zishaku_x[zahyo[4][1]]}px #{zishaku_y[zahyo[4][1]]}px, #{zishaku_x[zahyo[5][1]]}px #{zishaku_y[zahyo[5][1]]}px, #{zishaku_x[zahyo[6][1]]}px #{zishaku_y[zahyo[6][1]]}px, 20px 10px}\n" print".red {background-color:#99ffff; border:1px solid #000000; width:220;height:530 ; padding-left:10px; float: left; margin-right:60px; background-image: url(#{zishaku1}), url(#{zishaku2}), url(#{zishaku3}), url(#{zishaku4}), url(#{zishaku5}), url(#{zishaku6}), url(secondzu.green.png); background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat; background-position: 25px 25px, 50px 80px, 75px 135px, 100px 190px, 125px 245px, 150px 300px,20px 10px}\n" print".green {background-color:#99ffff; border:1px solid #000000; width:220;height:530 ; padding-left:10px; float: left; margin-right:60px; background-image: url(#{zishaku1}), url(#{zishaku2}), url(#{zishaku3}), url(#{zishaku4}), url(#{zishaku5}), url(#{zishaku6}), url(secondzu.yello.png); background-repeat:no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat,no-repeat; background-position: 25px 25px, 50px 80px, 75px 135px, 100px 190px, 125px 245px, 150px 300px,20px 10px}\n" print"</style>\n" print"<body>\n" print"<h1>#{han}班の結果</h1>\n" print"</body>\n" print"</html>\n"