#!/usr/bin/env ruby
# -*- coding: utf-8 -*-
require 'cgi'
require 'sqlite3'
require 'kconv'
c = CGI.new(:tag_maker => "html5", :accept_charest => "UTF-8")
db = SQLite3::Database.new("sql/main.sq3")
id = c.cookies["id"][0]
person = id.to_i
data = "select * from test where id = ?"
#idが?(後で代入)のデータをtest票から探す。という命令をdataにしくむ。全てがほしい場合は「*」。「*」を「name」に変えると該当データのnameだけとりだす。
cook = db.execute(data, person)
#dataに仕組んでいた命令を、personを代入しつつ実行。
upd = "update test set exp = ?, pt = ? where id = ?"
#「idが?3のとき、expを?1にする。ptを?2にする。」という命令文。
lvupd = "update test set lv = ? where id = ?"
que = "select q10 from toi where id = ?"
queupd = "update toi set q10 = 1 where id = ?"
q10 = db.execute(que, person)
name = cook[0][1]
cal = cook[0][2]
exp = cook[0][6]
pt = cook[0][7]
lv = cook[0][8]
pre = "%"
gohan = c["gohan"]
himitu = ""
if gohan == "g1" && pt >= 1
exp += 1
pt -= 1
db.execute(upd, exp, pt, person)
kekka = "#{cal}が成長した!"
elsif gohan == "g2" && pt >= 3
exp += 5
pt -= 3
db.execute(upd, exp, pt, person)
kekka = "#{cal}がすごく成長した!"
elsif gohan == "skipskip"
if q10[0][0] == 0
exp += 10
db.execute(upd, exp, pt, person)
kekka = ""
db.execute(queupd, person)
else
kekka ="しつもん に こたえられるのは いっかい だけだよ!"
end
else
kekka = "ポイント が たりない!"
end
if exp >= lv*10 && lv < 5
lv += 1
db.execute(lvupd, lv, person)
kekka += "<br>レベルが上がった!<br>レベルが#{lv}になった!"
end
modoru = '<br><a href="prof.rb">もどる!</a\>'
back = modoru
if lv < 5 && gohan == "g1" || lv < 5 && gohan == "g2"
mo = '<input type="button" value="おかわり!" onclick="location.reload();" />'
back = mo + modoru
elsif lv >= 5
back += "レベルマックスだよ!"
end
cook = db.execute(data, person)
exp = cook[0][6]
pt = cook[0][7]
lv = cook[0][8]
printf(<<_EOS_, name, exp, pt, kekka, back)
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<title>ごはぁん!</title>
<style type="text/css">
<!--
-->
</style>
<link rel="stylesheet" type="text/css" href="main.css">
</head>
<body>
<h1>ごはん!</h1>
<p>
%sさん<br>
exp:%d<br>
pt:%d<br>
%s
</p>
<p>%s</p>
</body>
</html>
_EOS_