Mercurial > hgrepos > hgweb.cgi > skipweb
changeset 476:b6cfe638a98d
tenaoshi
author | FUJIKAWA Kosuke <c111126@g.koeki-u.ac.jp> |
---|---|
date | Tue, 11 Feb 2014 18:06:06 +0900 |
parents | 8b0ac1f831c3 |
children | c8b7927cf19e |
files | nakamachi/data.rb |
diffstat | 1 files changed, 52 insertions(+), 28 deletions(-) [+] |
line wrap: on
line diff
--- a/nakamachi/data.rb Tue Feb 11 17:36:05 2014 +0900 +++ b/nakamachi/data.rb Tue Feb 11 18:06:06 2014 +0900 @@ -9,16 +9,33 @@ db = SQLite3::Database.new("sql/nakamachi.sq3") sql = Array.new +srand(56384679263254687) +10000.times {rand(1000000)} +idlist = (1..50).collect{rand(10000000)} +idlist.sort! + name = c['name'] nen = c['nen'] place = c['place'] bin = c['bin'] s = c['s'].to_i +k = c['k'].to_i argv = c['argv'] if ARGV[0] != nil argv = ARGV[0].to_i + k = 0 + for hoge in idlist + if argv.to_i == hoge + break + end + k += 1 + end end +stores = ["八月","食い道楽","翡宛","ルポトッフー","RAVI","綾","井筒","MAR"] +check = ["h","k","s","f","r","a","i","m",] +#h:八月 k:食い道楽 s:翠宛 f:ルポット"フー" r:RAVI a:綾 i:綾 m:MAR + printf"<html>\n <head><title>ほげ</title>\n <link rel=\"stylesheet\" type=\"text/css\" href=\"ほげ.css\">\n @@ -27,53 +44,60 @@ <h1>てすと用</h1>\n" result = db.execute("select * from coupon"); -#if argv == -if argv == "" +if idlist[k].to_i != argv.to_i print("ズルはだめですよ。\n") else -if result.length >= 50 - print"<h1>申し訳ありません</h1> + if result.length >= 50 + print"<h1>申し訳ありません</h1> <p>クーポンはもう全て発行されてしまいました。</p> <p>またの機会にお待ちしております</p>" -elsif s == 0 -elsif (name == "" || bin == "" || place == "") && s != 0 - print"<p>入力エラー:抜けているところはありませんか。\n" -elsif not(/\S+(市|町|村).+/ =~ place) || bin.to_s.length != 7 then - print"<p>入力エラー:間違っているところはありませんか。<br>\n + elsif s == 0 + elsif (name == "" || bin == "" || place == "") && s != 0 + print"<p>入力エラー:抜けているところはありませんか。\n" + elsif not(/\S+(市|町|村).+/ =~ place) || bin.to_s.length != 7 then + print"<p>入力エラー:間違っているところはありませんか。<br>\n 住所は市町村から入力してください。\n郵便番号は\"-\"抜きの7桁で入れてください。" -else - sql = "insert into coupon values (?,?,?,?,?)" - db.execute(sql,argv,name,nen,place,bin) - add = "|mail -s 'skip mail' c111126@g.koeki-u.ac.jp" - open(add, "w") do |mail| - mail.print "氏名:#{name}\n郵便番号#{bin}\n住所:#{place}\n年代:#{nen}\n -上記の情報で#{result.length+1}番目のクーポンが取得されました。" + else + k = k/5 + sql = "insert into coupon values (?,?,?,?,?)" + cargv = check[k].to_s + argv.to_s + begin + db.execute(sql,cargv,name,nen,place,bin) + rescue + print "<p>一度使われた番号です。もう発行できません。\n</p>" + else + add = "|mail -s 'skip mail' c111126@g.koeki-u.ac.jp" + open(add, "w") do |mail| + mail.print "氏名:#{name}\n郵便番号#{bin}\n住所:#{place}\n年代:#{nen}\n +上記の情報で#{result.length+1}番目のクーポンが取得されました。\n店舗は#{stores[k]}です。\n" + end + print "<p>登録されました。<br>クーポンは後日郵送されます。</p>" + end end - print "<p>登録されました。<br>クーポンは後日郵送されます。</p>" -end - -s += 1 -print" + + s += 1 + print" <form action=\"./data.rb\" method=\"POST\">\n <input type=\"hidden\" name=\"argv\" value=\"#{argv}\"> +<input type=\"hidden\" name=\"k\" value=\"#{k}\"> <p>氏名<input type=\"text\" name=\"name\" value=\"#{name}\"><br> 郵便番号<input type=\"text\" name=\"bin\" value=\"#{bin}\"><br> 住所<input type=\"text\" name=\"place\" value=\"#{place}\"><br> 年代<select name=\"nen\"> <option value=\"20代未満\"> 20代未満\n" -n = 20 + n = 20 4.times do - printf("<option value=\"%d代\">%d代\n",n,n) + printf("<option value=\"%d代\">%d代\n",n,n) n += 10 -end -print"<option value=\"60代以上\">60代以上\n + end + print"<option value=\"60代以上\">60代以上\n </select> <br> <input type=\"hidden\" name=\"s\" value=\"#{s}\"> <p><input type=\"submit\" value=\"GO\">\n <input type=\"reset\" balie=\"reset\"></p>" - -#result = db.execute("select * from coupon;") -#puts result.length + + #result = db.execute("select * from coupon;") + #puts result.length end