[發明專利]基于手機的實時搶答器實現方法在審
| 申請號: | 201710273264.8 | 申請日: | 2017-04-19 |
| 公開(公告)號: | CN107122445A | 公開(公告)日: | 2017-09-01 |
| 發明(設計)人: | 張佳鈺;史晨陽;許建秋 | 申請(專利權)人: | 南京航空航天大學 |
| 主分類號: | G06F17/30 | 分類號: | G06F17/30 |
| 代理公司: | 暫無信息 | 代理人: | 暫無信息 |
| 地址: | 210016 江*** | 國省代碼: | 江蘇;32 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 手機 實時 搶答 實現 方法 | ||
1.該實時搶答器的特點是借助選手自己的手機完成答題,不需要額外安裝軟件,簡單快捷;網站借助MySQL數據庫完成對參賽選手信息,比賽題目和答案,選手答題等信息的存儲;前端界面通過HTML實現;后臺通過PHP讀取數據庫信息,生成題目界面并在選手答題后返回選手答題的結果;這個技術降低了對設備的高要求性,選手答題簡單快捷,并采用一定的技術保證比賽的公正公平;實現流程主要由以下四部分組成:
(1)題目導入:賽前工作人員通過后臺管理系統錄入題目,選項和正確答案,存儲到數據庫中;然后生成每道題的答題界面鏈接,工作人員利用現有技術將鏈接放入到二維碼中,留作比賽時使用;
(2)選手注冊和登陸:比賽前,工作人員利用網絡上現有技術將注冊頁面的鏈接放到二維碼中,選手線下掃描二維碼完成注冊報名,使得比賽變得易于推廣,提高參與度;比賽當日,選手再次通過二維碼進入比賽登陸界面,完成登陸后,等待答題;
(3)選手答題:主持人宣布開始回答某道題時,后臺工作人員在比賽現場大屏幕上放出該題的二維碼,選手掃描二維碼后網頁跳轉到答題界面開始答題;二維碼會隨著題目變化進行更新,每道題的答題鏈接對應一個專屬的二維碼;每位選手都有10s的時間回答問題,時間結束后,系統自動提交答案,在答題過程中,選手被要求停留在答題界面,如果離開答題界面則被系統判為正在借助網絡搜索答案,系統就會鎖定頁面,無法修改答案,并立即提交;
(4)返回結果:每道題答完后,后臺會自動生成答對者名單,保存在后臺中,在主持人需要時,在現場大屏幕上顯示;所有問題答題結束后,根據比賽規則和選手答題情況,生成最后的比賽結果;對于每一道具體的題目,可以統計出每道題的正確率和平均答題時間,并根據答題情況實時顯示統計結果。
2.注冊和登陸主要通過HTML的表單和PHP來實現;參賽者在注冊界面填寫HTML表單,當參賽選手點擊submit按鈕后,表單數據發送到對應的PHP文件中,PHP文件連接數據庫,函數執行INSERT INTO語句,一條新的記錄會添加到數據庫表中;另外在提交用戶填寫的數據外,PHP文件中調用get_client_ip函數,獲取用戶端的IP地址,作為用戶的標識信息,或者用來限制每個IP的注冊次數;選手信息存放在數據庫中的user數據表中,數據表中有id,phone_num(手機號碼),ip(ip地址),user_name(姓名),user_password(登陸密碼),add_time(注冊時間)。
3.選手掃描二維碼打開某一題的答題界面,頁面會出現倒計時,以10s為例;打開頁面后,頁面先向后臺發一個請求得到起始時間和終止時間通過JavaScript變化數字;在10s之內,選手可以答題,如果提前答完,可以點擊提交按鈕完成答案提交,后臺會記錄當前的服務器時間,并將選手的答案和提交時間插入到數據庫中;如果時間結束選手沒有自動提交,頁面會自動提交;選手答案被存儲在數據庫中的user_answer數據表中,數據表中有id,q_id(題目的id),answer(所作的回答),time(提交時間)。
4.利用選手自己的手機答題,最大的問題就是防止選手利用網絡進行作弊行為;鑒于無法限制手機的網絡使用,因此采取將選手的網頁限定在答題界面的方式解決選手作弊問題:HTML5里頁面可見性接口為我們提供了一個方法,我們可以使用visibilitychange頁面事件來判斷當前頁面可見性的狀態,并針對性的執行任務;document.hidden屬性顯示頁面是否為選手當前觀看的頁面,值為ture或false;document.visibilityState的值要么是visible(表明頁面為瀏覽器當前激活tab,而且窗口不是最小化狀態),要么是hidden(頁面不是當前激活tab頁面,或者窗口最小化了);我們通過監聽visibilitychange這個事件來防止選手作弊,當選手打開其他頁面而離開答題界面時,會觸發visibilitychange事件,監聽器從而執行動作,鎖定答題界面并提交答案。
5.后臺管理部分主要實現題目的添加,答題結果的生成,數據的存儲借助于MySQL數據庫;比賽前工作人員在后臺中添加題目,題目類型,選項(如果有),正確答案;其中題目類型包括單項選擇,多項選擇和填空;題目可以是文本內容也可以是圖片;題目的導入通過JSON格式實現,然后再將JSON格式轉化為對象,插入到數據庫中;題目的存儲由三張數據表組成,question數據表,choices數據表和ture_answer數據表,question數據表中有id(題目編號),question(題目內容),version(題目版本),type(題目類型),add_time(添加時間)和allow_time(答題時間,默認10s);choices數據表有id,q_id(對應question數據表中的id,通過此將題目和選項聯系起來)和choice(題目選項);true_answer數據表有id,q_id(對應question數據表中的id,通過此將題目與正確答案聯系起來)和true_answer(正確答案);選手提交答案后,利用PHP寫的函數來統計成績,成績由兩部分組成:正確性和時間,在正確性的前提下比較答題時間;每道題答完之后,后臺將會把答對者的名單返回給現場的主持人,名單上有答對者的姓名和答題時間;比賽結束后,后臺自動統計所有選手的成績,假如出現分數相同的情況,答題時間少的人優勝。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于南京航空航天大學,未經南京航空航天大學許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201710273264.8/1.html,轉載請聲明來源鉆瓜專利網。





