亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于LAMP的在線編程測(cè)評(píng)平臺(tái)的研究與實(shí)現(xiàn)

        2019-12-01 00:48:21李星儒北方民族大學(xué)
        數(shù)碼世界 2019年12期
        關(guān)鍵詞:題庫(kù)評(píng)測(cè)功能區(qū)

        李星儒 北方民族大學(xué)

        關(guān)鍵字:LAMP OJ 在線編程測(cè)評(píng)平臺(tái)

        引言

        隨著國(guó)內(nèi)外各大算法競(jìng)賽的興起,如藍(lán)橋杯,ACM/ICPC等。各大高校也越來(lái)越重視學(xué)生算法編程能力的培養(yǎng),也吸引了不少學(xué)子前去參賽,我校也不例外。但是我校目前還沒(méi)有一個(gè)能投入使用的在線評(píng)測(cè)平臺(tái)。鑒于此,我們開(kāi)發(fā)了基于LAMP的在線編程測(cè)評(píng)平臺(tái)。LAMP是指基于Linux的,使用Apache作為網(wǎng)頁(yè)服務(wù)器,MySQL作為數(shù)據(jù)庫(kù)系統(tǒng),PHP作為編程語(yǔ)言的網(wǎng)站建站方案。在線編程評(píng)測(cè)平臺(tái)是一個(gè)在線的判題系統(tǒng)。使用者可以在上提交多種程序源代碼,并交由平臺(tái)自動(dòng)編譯測(cè)評(píng)。

        1 平臺(tái)功能設(shè)計(jì)

        1.1 前臺(tái)使用

        首先,系統(tǒng)部署完成后,用戶訪問(wèn)系統(tǒng)網(wǎng)址,在導(dǎo)航欄上可見(jiàn)題庫(kù)、評(píng)測(cè)狀態(tài)等幾個(gè)功能區(qū)。在用戶登錄后且具有管理員權(quán)限時(shí),會(huì)出現(xiàn)“控制臺(tái)”功能區(qū)。

        (1)題庫(kù)功能區(qū)

        題庫(kù)功能區(qū)是整個(gè)評(píng)測(cè)系統(tǒng)最核心的部分,在這個(gè)功能區(qū),可以看到諸如題目標(biāo)題、題目難度、題目提交數(shù)和正確通過(guò)數(shù)等重要的信息。

        (2)評(píng)測(cè)狀態(tài)功能區(qū)

        從這個(gè)功能區(qū)可以看到整個(gè)服務(wù)器的評(píng)測(cè)狀態(tài)。該功能區(qū)展示了一個(gè)列表,詳細(xì)顯示了目前正在排隊(duì)的測(cè)試案例和正在測(cè)評(píng)的測(cè)試案例。

        (3)我的功能區(qū)

        這里是用戶中心。用戶可以從這個(gè)功能區(qū)看到至今為止的自身測(cè)評(píng)統(tǒng)計(jì)數(shù)據(jù):總提交數(shù)、總通過(guò)數(shù)、通過(guò)率等。

        (4)控制臺(tái)功能區(qū)

        打開(kāi)控制臺(tái)功能區(qū),其中又細(xì)分為下列幾個(gè)小功能區(qū):題目管理、組卷管理、用戶管理欄目。

        2.2 數(shù)據(jù)庫(kù)設(shè)計(jì)概要

        平臺(tái)數(shù)據(jù)庫(kù)由 coder_questions、sessions、tests、submit、users五個(gè)表組成。其中,coder_questions用于存儲(chǔ)題庫(kù)里的題目,sessions用于保存用戶登錄憑證,tests用于保存組卷信息,submit用于保存用戶提交的代碼供后臺(tái)測(cè)評(píng),users用于保存平臺(tái)注冊(cè)的所有用戶信息。

        2 平臺(tái)具體實(shí)現(xiàn)

        (1)頁(yè)面路由顯示過(guò)程分析

        對(duì)整個(gè)平臺(tái)訪問(wèn)將自動(dòng)重定向到index.php。這個(gè)文件是首頁(yè)路由文件,再根據(jù)指定的規(guī)則過(guò)濾用戶請(qǐng)求之后,它將根據(jù)用戶的要求呈現(xiàn)不同的頁(yè)面。首頁(yè)路由文件核心代碼如下所示:

        $path=$_SERVER[`REQUEST_URI`];

        $path=preg_replace("/(?[w&=%:+-]*)/","",$path);

        if(file_exists("../smarty/tpl/oj-".$file_name.".tpl"))

        $smarty->display("oj-$file_name.tpl");

        else

        header($_SERVER["SERVER_PROTOCOL"]." 404 Not Found");

        (2)題庫(kù)讀取顯示關(guān)鍵代碼分析

        如下面所示,頁(yè)面首先會(huì)向數(shù)據(jù)庫(kù)發(fā)送查詢SQL請(qǐng)求,請(qǐng)求讀取題庫(kù)信息。為防止保存時(shí)亂碼,題庫(kù)數(shù)據(jù)都是經(jīng)過(guò)base64編碼過(guò)的,因此讀取之后需要經(jīng)過(guò)base64解碼。最后顯示到屏幕上。

        $ret=mysqli_query($GLOBALS[`db_conn`],"SELECT`id`,`title`,`ac`,`come_from` FROM `coder_questions` WHERE`showable`= 1");

        for($id=0;$id

        $question[$id]=mysqli_fetch_assoc($ret);

        foreach ($question[$id] as $key => $value)

        if($key!=`ac` ) $question[$id][$key]=base64_decode($value);

        (3)題目答案代碼提交過(guò)程分析

        核心代碼如下所示,當(dāng)頁(yè)面嘗試提交代碼時(shí),會(huì)通過(guò)WebSocket與后臺(tái)服務(wù)器建立連接,然后將會(huì)話憑據(jù)(sessionid)、base64編碼后的代碼(code)等編碼為JSON數(shù)據(jù)后發(fā)送至后臺(tái)服務(wù)器。

        var ws = new WebSocket("ws://{$domain}:3698");

        ws.onopen = function () {

        var params={`sessionid`:info[`sessionid`], method:`push`,

        code:window.btoa(unescape(encodeURIComponent(editor.getValue()))),type:$("#lang").val(),qid:info[`qid`] };

        ws.send(JSON.stringify(params));

        }

        然后后臺(tái)服務(wù)器接收到前端發(fā)過(guò)來(lái)的代碼,會(huì)將其插入數(shù)據(jù)庫(kù)的submit表,等待系統(tǒng)測(cè)評(píng)。

        3 結(jié)語(yǔ)

        經(jīng)過(guò)長(zhǎng)達(dá)1年的艱苦建設(shè),我校在線評(píng)測(cè)系統(tǒng)終于初步建成。這極大地提高了我校計(jì)算機(jī)學(xué)院學(xué)生們的算法及編程水平,也為以后我校參加諸如藍(lán)橋杯等競(jìng)賽的選手提供了訓(xùn)練平臺(tái),相信在優(yōu)越的條件下,我校相關(guān)專業(yè)學(xué)生能在算法類競(jìng)賽取得更好的成績(jī)。

        猜你喜歡
        題庫(kù)評(píng)測(cè)功能區(qū)
        “勾股定理”優(yōu)題庫(kù)
        次時(shí)代主機(jī)微軟XSX全方位評(píng)測(cè)(下)
        次時(shí)代主機(jī)微軟XSX全方位評(píng)測(cè)(上)
        “軸對(duì)稱”優(yōu)題庫(kù)
        “軸對(duì)稱”優(yōu)題庫(kù)
        “整式的乘法與因式分解”優(yōu)題庫(kù)
        燒結(jié)混合機(jī)各功能區(qū)的研究與優(yōu)化
        山東冶金(2019年3期)2019-07-10 00:53:54
        攻坡新利器,TOKEN VENTOUS評(píng)測(cè)
        衡水市不同功能區(qū)土壤營(yíng)養(yǎng)元素的比較
        Canyon Ultimate CF SLX 8.0 DI2評(píng)測(cè)
        狠狠综合久久av一区二区三区 | 中文天堂国产最新| 国产激情电影综合在线看| 免费国产交换配乱淫| 久久天堂av色综合| 亚洲中文字幕一区高清在线| 精品一级一片内射播放| 波多野结衣久久精品99e| 国产成人精品一区二区视频| 国产精彩视频| 亚洲日本精品一区久久精品| 国产丝袜美腿在线播放| 国产内射爽爽大片视频社区在线 | 国产免费一区二区三区免费视频| 国产乱子伦精品免费无码专区| 国产成人乱色伦区小说| 亚洲国产成人精品一区刚刚| 日本高清视频在线观看一区二区| 日韩精品久久久久久免费| 粗大的内捧猛烈进出在线视频| 国产一区二区三区观看视频| 亚洲熟女一区二区三区250p| 国产成人精品日本亚洲专区61| 免费无码一区二区三区蜜桃大| 久久精品免费无码区| 少妇特殊按摩高潮对白| 天堂在线资源中文在线8| 国产精品免费精品自在线观看| 天天av天天爽无码中文| av永远在线免费观看| 久久精品女同亚洲女同| а天堂中文最新一区二区三区| 各种少妇正面着bbw撒尿视频| 午夜男女爽爽爽在线视频| 国产成人一区二区三中文| 国产亚洲日韩AV在线播放不卡| 日本精品av中文字幕| 亚洲av综合一区二区在线观看| 亚洲精品国产精品国自产观看| 美腿丝袜av在线播放| 在线观看 国产一区二区三区|