1084
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
1 #!/usr/bin/env ruby22
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
2 # -*- coding: utf-8 -*-
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
3
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
4 require 'sqlite3'
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
5 require 'kconv'
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
6 require 'cgi'
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
7 require 'csv'
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
8
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
9 c = CGI.new(:tag_maker => "html5", :accept_charest => "UTF-8")
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
10 db = SQLite3::Database.new("sql/main.sq3")
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
11 csv = "list.csv"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
12
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
13 sql = "insert into test values(?, ?, ?, ?, ?, ?, ?, ?, ?)"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
14
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
15 toi = "insert into toi values (?, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0)"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
16 item = "insert into goods values (?, 0, 0, 0, 0, 0, 0)"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
17
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
18 name = c["name"]
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
19 pswd = c["pswd"]
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
20 cle1 = "CREATE TABLE IF NOT EXISTS test(id, name, cal, age, sex, pswd, exp, pt, lv)"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
21 cle2 = "CREATE TABLE IF NOT EXISTS toi(id, q1, q2, q3, q4, q5, q6, q7, q8, q9, q10)"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
22 cle3 = "CREATE TABLE IF NOT EXISTS goods(id, g1, g2, g3, g4, g5, g6)"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
23 cle4 = "CREATE TABLE IF NOT EXISTS time(cd, now, id)"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
24 cle5 = "CREATE TABLE IF NOT EXISTS num(cd, id)"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
25 cle6 = "CREATE TABLE IF NOT EXISTS pass(id, pass, name)"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
26
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
27 cle7 = "CREATE TABLE IF NOT EXISTS zukan(no, name, tah, lv2, lv3, lv4, lv5)"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
28 cle8 = "CREATE TABLE IF NOT EXISTS box(id, no1, e1, t1, tm1, no2, e2, t2, tm2, no3, e3, t3, tm3)"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
29 ins8 = "insert into box values(?,?,0,?,?,0,0,0,0,0,0,0,0)"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
30
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
31 ins4 = 'insert into time values(?, 61, "n")'
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
32 ins5 = 'insert into num values("aa",0)'
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
33 ins6 = 'insert into pass values(?, ?, ?)'
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
34 num = "select id from num where cd = ?"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
35 numup = "update num set id = ? where cd = ?"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
36
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
37 db.execute(cle1)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
38 db.execute(cle2)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
39 #db.execute(cle3)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
40 db.execute(cle4)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
41 db.execute(cle5)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
42 db.execute(cle6)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
43 db.execute(cle7)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
44 db.execute(cle8)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
45 if name == "createman789789789"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
46 ("a".."j").each{|x|db.execute(ins4,x)}
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
47 db.execute(ins5)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
48 #system `sqlite3 -separator , /sql/main.sq3 ".import list.csv zukan"` #(ins7)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
49 CSV.foreach(csv) do |row|
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
50 db.execute("INSERT INTO zukan VALUES(?,?,?,?,?,?,?)",*row)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
51 end
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
52 end
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
53
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
54 name = c["name"]
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
55 namae = "#{name}"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
56 cal = c["cal"]
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
57 age = c["age"]
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
58 sex = c["sex"]
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
59 aria = c["aria"]
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
60
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
61
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
62 id = c.cookies["id"][0]
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
63 pass = c.cookies["pass"][0]
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
64 no1 = db.execute("select no from zukan where name = ?",cal)[0][0]
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
65 t1 = db.execute("select tah from zukan where name = ?",cal)[0][0]
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
66
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
67
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
68 if id == nil
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
69 number = db.execute(num, "aa")
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
70 begin
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
71 id = number[0][0].to_i + 1
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
72 rescue
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
73 ("a".."j").each{|x| db.execute(ins4,x)}
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
74 # db.execute(ins4, "b")
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
75 # db.execute(ins4, "c")
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
76 # db.execute(ins4, "d")
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
77 # db.execute(ins4, "e")
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
78 # db.execute(ins4, "f")
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
79 # db.execute(ins4, "g")
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
80 # db.execute(ins4, "h")
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
81 # db.execute(ins4, "i")
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
82 # db.execute(ins4, "j")
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
83 db.execute(ins5)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
84 id = number[0][0].to_i + 1
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
85 end
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
86 exp = 0
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
87 pt = 0
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
88 lv = 1
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
89 cd = "aa"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
90 if pass == nil
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
91 pass = id
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
92 end
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
93 db.execute(ins6, id, pass, name)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
94 db.execute(sql, id, name, cal, age, sex, aria, exp, pt, lv)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
95 db.execute(toi, id)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
96 # db.execute(item, id)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
97 db.execute(numup, id, cd)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
98 db.execute(ins8,id,no1,t1.to_i/5,t1.to_i/5)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
99 end
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
100 # srand(id.to_i)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
101 # id2 = rand(1000000)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
102 id2 = pass
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
103
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
104
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
105
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
106 expires = "SUN, 5, MAR 2017 00:00:00 GMT"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
107
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
108 printf("Content-type: text/html; charset=UTF-8
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
109 Set-Cookie:id=%s ;expires=%s
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
110 Set-Cookie:pass=%s ;expires=%s\n\n", id, expires, id2, expires)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
111
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
112 printf(<<_EOS_, name, id.to_i)
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
113 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
114 <html>
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
115 <head>
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
116
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
117 <meta name="viewport" content="width=device-width,initial-scale=1,maximum-scale=1,user-scalable=no">
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
118 <meta name="format-detection" content="telephone=no">
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
119 <link media="only screen and (max-device-width:480px)" href="smart.css" type="text/css" rel="stylesheet" />
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
120 <link media="screen and (min-device-width:481px)" href="profeel.css" type="text/css" rel="stylesheet" />
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
121
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
122
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
123
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
124
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
125 <link rel="shortcut icon" href="./img/cabage.png"/>
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
126 <title>Registering Account</title>
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
127
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
128 </head>
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
129 <body>
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
130 <h1>Miyazac Quest</h1>
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
131 <h2>登録完了!</h2>
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
132 <p>よくきた_ %s _よ!</p>
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
133 <p>おまえのIDは%04dだ!</p>
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
134 <div class="f1"><a href="prof.rb"><div class="lets"><span>始めよう!</span></div></a></div>
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
135 <form method="POST" type="text">
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
136 </form>
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
137 </body></html>
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
138 _EOS_
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
139 if name == "createman987987987"
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
140 filename ='sql/main.sq3'
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
141 File.delete filename
|
ARAKI Tsuyohito <c113007@e.koeki-u.ac.jp>
parents:
diff
changeset
|
142 end
|