Mercurial > hgrepos > hgweb.cgi > skipweb
changeset 3427:06cade7f50f8
tess
author | KASHIWAGURA Aya <c115046@?.koeki-u.ac.jp> |
---|---|
date | Thu, 27 Jul 2017 13:34:51 +0900 |
parents | 3a18dc69045a |
children | ed1a15e1c32d |
files | event/oasis2017/idol/pro.rb event/oasis2017/idol/tess.rb |
diffstat | 2 files changed, 209 insertions(+), 153 deletions(-) [+] |
line wrap: on
line diff
--- a/event/oasis2017/idol/pro.rb Thu Jul 27 12:38:25 2017 +0900 +++ b/event/oasis2017/idol/pro.rb Thu Jul 27 13:34:51 2017 +0900 @@ -40,6 +40,7 @@ if form_clr > "" && id > ''# クリアボタンが押されていたら db.execute("DELETE FROM point WHERE id=?", id) end + if form_name > "" # formからの名前設定がもしあれば db.execute("REPLACE INTO users VALUES(?, ?, ?)", id, form_name, Time.now.to_s) end @@ -60,13 +61,12 @@ EOF - if !name # もしユーザのプレイ名が未設定なら title = "アイドルを育成しよう!" hello = "プレイ名を入力してね" input = '<input name="playname">' - - print('<form action="name.rb" method="POST">') + + print('<form action="tess.rb" method="POST">') printf(<<-EOF, <h1>%s</h1> @@ -83,156 +83,6 @@ EOF title, hello, input,) - -#else - #導入画面 - - #require 'cgi' - #c = CGI.new(:accept_charset => 'utf-8') - - page = Hash.new - n = 0 - img = "" - - - open("aikiss-p.txt","r:utf-8") do |cat| - - while line = cat.gets - if /(\d+)\s+(\S+)\s+/ =~line - page[$1] = $2 - end - end - end - - - p = c["page"] - gin = c["adm"] - x = c["sam"] - - if p=="" - p="1"# page変数指定がなければ "1" とする - end - name = c["name"] - - - - - if p =="9" - print(<<-"EOF") -<form method="POST" action="home.rb"> -EOF - - else - print(<<-"EOF") - <form method=\"POST\" action=\"pro.rb\"> -EOF - - end - - # ページ番号による切り替え処理 - - printf("<p>%s</p>\n",page[p]) - case p - when "1" - img = "1.jpg" - nextpage = "2" - - when "2" - nextpage = "3" - - when "3" - nextpage = "4" - img = "blue1.png" - - when "4" - nextpage = "5" - img = "white1.png" - when "5" - nextpage = "6" - img = "red1.png" - when "6" - nextpage = "7" - when "7" - nextpage = "8" - - when "8" - - puts('<img src="shugo2.png">') - nextpage = "9" - - print(<<-"EOF") -<p><br> - -<label><input type="radio" name="adm" value="red">中央(日和山あかね)</label><br> -<label><input type="radio" name="adm" value="white">画面左(白鳥ゆき)</label><br> -<label><input type="radio" name="adm" value="blue">画面右(鳥海あおい)</label></p> - EOF - - when "9" - case gin - when "red" - print(<<-"EOF") - <img src="red1.png"align="left"valign="middle"> - <p>「初めまして、日和山あかね(ひよりやま あかね)だよ!<br>好きなのは歌とダンス!<b\ -r>!夢は大きなステージでライブをすることでっす!<br>たっくさん努力するから応援よろし\\ -くね</p> - この子にする<br> - - <br><INPUT type="button" onclick="history.back()" value="NO"> - <input type="submit" value="YES"> -EOF - - - when "white" - print(<<-"EOF") - <img src="white1.png"align="left"valign="middle"> - <p>初めまして白鳥ゆき(しらとり ゆき)です。<br>他の娘たちみたいな輝くもののない普通\ -の子ですが、<br>精一杯頑張りますのでよろしくお願いします。」</p> - この子にする?<br> - <br><INPUT type="button" onclick="history.back()" value="NO"> - <input type="submit" value="YES"> -EOF - - - - when "blue" - print(<<-"EOF") - <img src="blue1.png"align="left"valign="middle"> - <p>「は、初めまして。えっと、鳥海あおい(とりみ あおい)と申します。<br>人前に立つ\\ -のは苦手で、少しでもこんな自分を変えられたらって思ったんですけど。<br>やっぱり私、向\\ -いてないですよね…?」</p> - この子にする? - <br><INPUT type="button" onclick="history.back()" value="NO"> -<input type="submit" value="YES"> -EOF - - - end - nextpage =nil - - end - - - - - - - if p =="9" - printf("<input type=\"hidden\" name=\"sam\" value=\"%s\">\n", gin) - printf("<input type=\"hidden\" name=\"page\" value=\"%s\">\n", nextpage) - - #elsif p =="10" - # printf("<input type=\"hidden\" name=\"sam\" value=\"%s\">\n", gin) - - #printf("<input type=\"hidden\" name=\"page\" value=\"%s\">\n", nextpage) - elsif nextpage - - printf("<input type=\"hidden\" name=\"page\" value=\"%s\">\n", nextpage) - printf("<img src=\"%s\">\n",img) - puts('<br><INPUT type="button" onclick="history.back()" value="前へ">') - puts('<input type="submit" value="次へ">') - - end else # プレイ名設定済みならホーム画面へ print('<form action="home.rb" method="POST">') print('<input type="hidden" name="playname" value="id" >')
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/event/oasis2017/idol/tess.rb Thu Jul 27 13:34:51 2017 +0900 @@ -0,0 +1,206 @@ +#!/usr/bin/env ruby +# -*- coding: utf-8 -*- +require 'sqlite3' +file = "db/point.sq3" + +require 'cgi' +c = CGI.new(:accept_charset => "UTF-8") + +# 前回のアクセスで既にcookieが定義されていたら取得 +# ブラウザからのcookieは、c.cookies[変数名][0] で受け取る +cookie_id=c.cookies["id"][0] + +# 前回のアクセスで入力された値を取得 +form_name=c["playname"] # nameをフォームから取得(もしあれば) +form_kwd=c["keyword"] # keywordも取得(もしあれば) +form_clr=c["clear"] # クリアボタン + +if cookie_id == nil # (1)もしcookieからのidがなければ新規生成 + # 新規idは、現在時刻を秒(to_i)にした文字列(to_s)と乱数の組み合わせ + newid = Time.now.to_i.to_s + "/" + rand(99999).to_s + id=newid # 新規idをidとする +else # (2)cookieからのidがあればそれをidとする + id=cookie_id +end + +# idをすぐcookieで相手ブラウザに送る +# 変数の期限を24時間に設定し、expire変数に入れる +expire = (Time.now+24*3600).gmtime.strftime("%a, %d %b %Y %H:%M:%S GMT") + +printf("Content-type: text/html; charset=UTF-8\n") +printf("Set-Cookie: id=%s; expires=%s\n\n", id, expire) + +db = SQLite3::Database.new("db/users.sq3") +db.execute("PRAGMA foreign_keys=on") +db.execute("CREATE TABLE IF NOT EXISTS " + + "users(id text primary key, name text, creation text)") +db.execute("CREATE TABLE IF NOT EXISTS " + + "point(id, keyword text, FOREIGN KEY(id) REFERENCES users(id))") + +if form_clr > "" && id > ''# クリアボタンが押されていたら + db.execute("DELETE FROM point WHERE id=?", id) +end +if form_name > "" # formからの名前設定がもしあれば + db.execute("REPLACE INTO users VALUES(?, ?, ?)", id, form_name, Time.now.to_s) +end +point = 0# 開始直後は0点 +# SELECTの検索結果に値があるかは [0] が nil かどうかで判定できる +name = db.execute("SELECT name FROM users WHERE id=?", id)[0] + +print(<<-EOF) + + +<!DOCTYPE html> +<html lang="ja"> +<head><title>アイキス、しよ?</title> +<link rel="stylesheet" type="text/css" href="ema3.css" > +<meta name="viewport" content="width=device-width"> +</head> +<body> + +EOF + +page = Hash.new + n = 0 + img = "" + + + open("aikiss-p.txt","r:utf-8") do |cat| + + while line = cat.gets + if /(\d+)\s+(\S+)\s+/ =~line + page[$1] = $2 + end + end + end + + + p = c["page"] + gin = c["adm"] + x = c["sam"] + + if p=="" + p="1"# page変数指定がなければ "1" とする + end + name = c["name"] + + + if p =="9" + print(<<-"EOF") +<form method="POST" action="home.rb"> +EOF + + else + print(<<-"EOF") + <form method=\"POST\" action=\"tess.rb\"> +EOF + + end + + # ページ番号による切り替え処理 + + printf("<p>%s</p>\n",page[p]) + case p + when "1" + img = "1.jpg" + nextpage = "2" + + when "2" + nextpage = "3" + + when "3" + nextpage = "4" + img = "blue1.png" + + when "4" + nextpage = "5" + img = "white1.png" + when "5" + nextpage = "6" + img = "red1.png" + when "6" + nextpage = "7" + when "7" + nextpage = "8" + + when "8" + + puts('<img src="shugo2.png">') + nextpage = "9" + + print(<<-"EOF") +<p><br> +<label><input type="radio" name="adm" value="red">中央(日和山あかね)</label><br> +<label><input type="radio" name="adm" value="white">画面左(白鳥ゆき)</label><br> +<label><input type="radio" name="adm" value="blue">画面右(鳥海あおい)</label></p> + EOF + + when "9" + case gin + when "red" + print(<<-"EOF") + <img src="red1.png"align="left"valign="middle"> + <p>「初めまして、日和山あかね(ひよりやま あかね)だよ!<br>好きなのは歌とダンス!<b\ +r>!夢は大きなステージでライブをすることでっす!<br>たっくさん努力するから応援よろし\\ +くね</p> + この子にする<br> + + <br><INPUT type="button" onclick="history.back()" value="NO"> + <input type="submit" value="YES"> +EOF + + + when "white" + print(<<-"EOF") + <img src="white1.png"align="left"valign="middle"> + <p>初めまして白鳥ゆき(しらとり ゆき)です。<br>他の娘たちみたいな輝くもののない普通\ +の子ですが、<br>精一杯頑張りますのでよろしくお願いします。」</p> + この子にする?<br> + <br><INPUT type="button" onclick="history.back()" value="NO"> + <input type="submit" value="YES"> +EOF + + + + when "blue" + print(<<-"EOF") + <img src="blue1.png"align="left"valign="middle"> + <p>「は、初めまして。えっと、鳥海あおい(とりみ あおい)と申します。<br>人前に立つ\\ +のは苦手で、少しでもこんな自分を変えられたらって思ったんですけど。<br>やっぱり私、向\\ +いてないですよね…?」</p> + この子にする? + <br><INPUT type="button" onclick="history.back()" value="NO"> +<input type="submit" value="YES"> +EOF + + + end + nextpage =nil + end + +if p =="9" + printf("<input type=\"hidden\" name=\"sam\" value=\"%s\">\n", gin) + printf("<input type=\"hidden\" name=\"page\" value=\"%s\">\n", nextpage) + + +elsif nextpage + + printf("<input type=\"hidden\" name=\"page\" value=\"%s\">\n", nextpage) + printf("<img src=\"%s\">\n",img) + puts('<br><INPUT type="button" onclick="history.back()" value="前へ">') + puts('<input type="submit" value="次へ">') + +end + + + + +print(<<-EOF) + + +</form></body></html> +EOF + + + +