Mercurial > hgrepos > hgweb.cgi > skipweb
view program/GiveMeALiftInYourCar/new_acount.rb @ 1159:99248e0e3f6f
merged
author | GOTO Sakuya<c113061@e.koeki-u.ac.jp> |
---|---|
date | Tue, 01 Dec 2015 22:49:24 +0900 |
parents | 6117d10abd89 |
children |
line wrap: on
line source
#!/usr/bin/env ruby # coding: euc-jp require 'sqlite3' require 'cgi' c = CGI.new(:tag_maker => "html4", :accept_charset => "EUC-JP") sub_name = c["sub_name"] pass = c["pass"] # Check user visted this page. visit = c["visit"] #HTTPヘッダー print("Content-type: text/html; charset=EUC-JP \n\n") db = SQLite3::Database.new("sql/acounts.sq3") # sqlite_masterからテーブルを取得 sql_master = "SELECT name FROM sqlite_master;" # acounts テーブルの設定 sql = "CREATE TABLE acounts ( sub_name TEXT PRIMARY KEY, name TEXT, address TEXT, student_number TEXT, password TEXT );" # sql_masterの実行結果をsqlite_masterに代入 sqlite_master = db.execute(sql_master) x = 0 value_master = Array.new sqlite_master.each {|line| value_master[x] = line x += 1 } # テーブルが存在しなければテーブルを作成 check = 0 if !(value_master == []) for n in value_master[check] if n == "acounts" check += 1 break end end end if check == 0 db.execute(sql) end # HTML(入力フォーム) # ヘッダー print' <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html> <head> <title>アカウント作成 -koeki network-</title> <style type="text/css"> <!-- --> </style> <link rel="stylesheet" type="text/css" href="group.css"> </head> <div class="base"> <h1 ><img class="kn" src="koeki-network.png" alt="300x167(14204bytes)" width="300" height="120"> </h1> <h2>あかうんと作成</h2> <div class="bb"> ' # 入力データの確認 if sub_name > "" && pass > "" # 入力データをデータベースと照合 sql_check = "select sub_name from acounts where sub_name=?;" acounts = db.execute(sql_check, sub_name) if acounts == [] # アカウントの追加 sql_acount = "INSERT INTO acounts VALUES(?,'n','n','n',?);" db.execute(sql_acount, sub_name, pass) # アカウント作成成功時の画面 print' アカウントの作成に成功しました。<br> 下のリンクからログインして下さい。</p> <a class="cont" href="./login.html">ログイン</a> ' else # アカウント作成失敗時(ユーザー名重複) print' すでに使用されているユーザー名です。<br> 下のリンクから再度アカウント作成を行ってください.</p> <a class="cont" href="./new_acount.rb">アカウント作成画面に戻る</a> ' end else if visit > "" print'<p class="caution">入力されてない項目があります!</p>' end # 入力画面 print' <form method="POST" action="./new_acount.rb"> <p> <table> <tr><th>ユーザー名:</th> <td><input class="mgn_2" name="sub_name" type="text" maxlength="12"></td></tr> <tr><th>パスワード:</th> <td><input class="mgn_2" name="pass" type="password" maxlength="12"></td></tr> </table> <input name="visit" type="hidden" value="visited"> <input type="submit" value="OK"> <input type="reset" value="reset"><br> </p> ' end db.close # フッダー print' <hr> <a href="./login.html">ログイン画面に戻る</a><br> </div> <hr> <address>c112124@h.koeki-u.ac.jp</address> <div> </body> </html> '