林程華
摘要:隨著社會(huì)對(duì)高技能人才的需求不斷增加,技能競(jìng)賽在職業(yè)院校中正積極開展,而技能競(jìng)賽選拔和訓(xùn)練是一項(xiàng)中心工作。為改變傳統(tǒng)的模式,促進(jìn)技能競(jìng)賽的開展和職業(yè)教育的發(fā)展,使計(jì)算機(jī)技術(shù)能應(yīng)用于實(shí)際工作,該設(shè)計(jì)將在PHP+Apache+ MySQL組合的基礎(chǔ)上,介紹技能競(jìng)賽選拔和訓(xùn)練系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)過程。
關(guān)鍵詞:職業(yè)院校;技能競(jìng)賽;選拔;訓(xùn)練;PHP
中圖分類號(hào):TP311 文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2017)02-0074-04
Design and Realization of Skill Contest Selection and Training System Based on PHP
LIN Cheng-hua
(Guangdong Machinery Senior Technical School, Guangzhou 510450, China)
Abstract: With the increasing demand for highly skilled professionals, skills competitions in vocational schools are actively developing, and skill competition, selection and training is a central task. In order to change the traditional mode, to promote the development of the skill competition and the development of vocational education, the computer technology can be applied to practical work. This design will introduce the design and implementation process of the skill competition selection and training system on the basis of PHP + Apache + MySQL combination.
Key words: Vocational schools; skills competition; selection; training;PHP
職業(yè)院校是國家培養(yǎng)高技能人才的基地,目前,我國各類職業(yè)院校每年為國家輸送了大量的技術(shù)型人才,隨著科學(xué)技術(shù)的不斷發(fā)展,各類人才結(jié)構(gòu)也在不斷轉(zhuǎn)型升級(jí)發(fā)展,同時(shí),職業(yè)院校的學(xué)生也在通過各類技能競(jìng)賽,不斷提升自我,提高技能水平,與世界接軌。當(dāng)今,隨著職業(yè)技能競(jìng)賽的蓬勃發(fā)展,國家對(duì)職業(yè)技能競(jìng)賽也越來越關(guān)注,自2010以來,我國已經(jīng)參加了三屆的世界技能大賽,取得了很好的成績[1],中國在世界技能大賽的成績,充分證明了中國制造正在世界范圍內(nèi)發(fā)揮著越來越重要的影響,中國的高技能人才水平正在向全世界展示中國技術(shù)水平的精湛和實(shí)力。
為參加世界技能大賽,各個(gè)職業(yè)院校積極開展各類的技能競(jìng)賽,提升學(xué)生的技術(shù)水平,培養(yǎng)高技能人才。目前,技能競(jìng)賽的選拔和訓(xùn)練工作是很多職業(yè)院校的重要工作之一,而傳統(tǒng)的競(jìng)賽模式中,教師需通過印刷大量的紙張競(jìng)賽題目選拔,改卷和后期訓(xùn)練,工作效率低,工作量大,學(xué)生參與的積極性也受到一定的影響。因此,基于改變傳統(tǒng)的競(jìng)賽選拔和訓(xùn)練模式,本設(shè)計(jì)將從技能競(jìng)賽的角度出發(fā),介紹基于PHP的技能競(jìng)賽的選拔和訓(xùn)練系統(tǒng)的開發(fā)設(shè)計(jì)和實(shí)現(xiàn)過程。
1 原理和技術(shù)
系統(tǒng)體系結(jié)構(gòu)中,C/S結(jié)構(gòu)和B/S結(jié)構(gòu)是最常見的兩種結(jié)構(gòu)。B/S結(jié)構(gòu)即瀏覽器/服務(wù)器結(jié)構(gòu)(Browser/Server),相比C/S結(jié)構(gòu)而言,B/S結(jié)構(gòu)不管在電腦端、平板端還是手機(jī)端,它都可以通過瀏覽器進(jìn)行相應(yīng)操作,通過瀏覽器向服務(wù)器發(fā)出請(qǐng)求,然后服務(wù)器與數(shù)據(jù)庫之間進(jìn)行相應(yīng)數(shù)據(jù)傳輸和處理,最后將瀏覽器發(fā)出的請(qǐng)求在瀏覽器端進(jìn)行顯示的模式[2],B/S結(jié)構(gòu)如圖1所示。
在本設(shè)計(jì)的技能競(jìng)賽選拔和訓(xùn)練系統(tǒng)中,系統(tǒng)的搭建基于B/S結(jié)構(gòu),方便各類終端的接入,如系統(tǒng)在學(xué)校技能節(jié)的技能競(jìng)賽選拔中,通過搭建好的服務(wù)器接入到機(jī)房服務(wù)器中,參加比賽的學(xué)生即可通過機(jī)房電腦的瀏覽器訪問系統(tǒng)進(jìn)行在線測(cè)試并記錄成績,同時(shí),也可以通過接入到學(xué)校網(wǎng)絡(luò)的平板或手機(jī)終端進(jìn)行相應(yīng)的操作,大大提升了系統(tǒng)的便捷性。
在本設(shè)計(jì)的技能競(jìng)賽選拔和訓(xùn)練系統(tǒng)中,數(shù)據(jù)需要在B/S結(jié)構(gòu)的三層結(jié)構(gòu)中進(jìn)行傳輸,而數(shù)據(jù)在各層之間的傳輸需要使用的是動(dòng)態(tài)網(wǎng)頁技術(shù),本設(shè)計(jì)采用的是PHP+Apache+MySQL的組合。
PHP(超文本預(yù)處理器)作為一種腳本語言,可以嵌入到HTML文件中,具有速度快、語法簡單、支持多種數(shù)據(jù)庫等特點(diǎn),是動(dòng)態(tài)網(wǎng)頁開發(fā)的一種快速工具[5]。
Apache服務(wù)器作為一種流行的WEB服務(wù)器,具有穩(wěn)定、安全、支持多平臺(tái)(如Linux、Windows)等特點(diǎn)[3],在目前主流的網(wǎng)絡(luò)web服務(wù)器中,Apache服務(wù)器已經(jīng)占據(jù)了半壁江山。
MySQL數(shù)據(jù)庫作為當(dāng)今流行的數(shù)據(jù)庫系統(tǒng),它具有多平臺(tái)支持、使用和管理方便、速度快等特點(diǎn)[4]。在本設(shè)計(jì)的技能競(jìng)賽選拔和訓(xùn)練系統(tǒng)中,由于很多競(jìng)賽面向的學(xué)生群體人數(shù)較多,如計(jì)算機(jī)操作員技能競(jìng)賽,面向的是全校100多個(gè)班級(jí)的參賽選手,如果系統(tǒng)選擇的數(shù)據(jù)庫速度不高,將嚴(yán)重影響競(jìng)賽的組織過程。
通過技術(shù)分析,在本設(shè)計(jì)中,B/S結(jié)構(gòu)為系統(tǒng)帶來了便利,而PHP+Apache+ MySQL的組合,為系統(tǒng)帶來了技術(shù)的穩(wěn)定和速度。
2 需求分析
本系統(tǒng)開發(fā)的作用是作為技能競(jìng)賽選拔和訓(xùn)練,因此,通過對(duì)系統(tǒng)的需求分析,系統(tǒng)面向的主體對(duì)象是學(xué)生、教師和管理員。其中,管理員主要負(fù)責(zé)對(duì)教師用戶進(jìn)行管理;教師用戶主要對(duì)系統(tǒng)的各大主體模塊和學(xué)生用戶進(jìn)行管理;學(xué)生用戶在系統(tǒng)中可以進(jìn)行注冊(cè)登錄、在線測(cè)試和記錄查詢、信息查詢和疑問咨詢等操作。
通過需求分析,系統(tǒng)將面向三類用戶角色,他們分別參與的任務(wù)如表1所示:
通過對(duì)技能競(jìng)賽選拔和訓(xùn)練系統(tǒng)的分析,可獲取不同角色的用例圖,以學(xué)生角色為例,學(xué)生用戶在系統(tǒng)中可以進(jìn)行注冊(cè)登錄、競(jìng)賽和訓(xùn)練等操作,其用例圖如圖2所示。
競(jìng)賽選拔和訓(xùn)練作為系統(tǒng)的主體內(nèi)容,學(xué)生用戶在該模塊中,可以進(jìn)行在線競(jìng)賽考試,然后通過系統(tǒng)的自動(dòng)審閱功能,學(xué)生可以馬上知道競(jìng)賽的成績,而在訓(xùn)練系統(tǒng)中,學(xué)生可以對(duì)每次模擬競(jìng)賽的成績進(jìn)行保存,以便明確自身的學(xué)習(xí)進(jìn)度和進(jìn)步水平。
3 系統(tǒng)功能設(shè)計(jì)
根據(jù)系統(tǒng)的需求分析,系統(tǒng)面向三類用戶角色,管理員主要負(fù)責(zé)對(duì)教師用戶進(jìn)行管理,面向?qū)W生用戶主要是系統(tǒng)登錄相關(guān)功能、競(jìng)賽模塊和訓(xùn)練模塊等功能,面向教師用戶主要是系統(tǒng)登錄相關(guān)功能、學(xué)生管理模塊、競(jìng)賽模塊后臺(tái)管理和訓(xùn)練模塊后臺(tái)管理等,其中,面向?qū)W生和教師的功能結(jié)構(gòu)圖如圖3和圖4所示:
面向?qū)W生用戶各功能詳細(xì)描述如下:
1)系統(tǒng)登錄相關(guān)模塊:學(xué)生用戶通過該模塊注冊(cè)后可登錄系統(tǒng),在系統(tǒng)中可以進(jìn)行用戶資料的更改,同時(shí)也可以在該模塊中退出系統(tǒng)。
2)競(jìng)賽模塊:學(xué)生用戶登錄系統(tǒng)后通過該模塊進(jìn)行在線競(jìng)賽,競(jìng)賽后可以通過系統(tǒng)查看競(jìng)賽成績并保存競(jìng)賽成績。
3)訓(xùn)練模塊:學(xué)生用戶登錄系統(tǒng)后可查閱競(jìng)賽相關(guān)信息、題型詳解,可對(duì)訓(xùn)練過程中遇到的問題進(jìn)行實(shí)時(shí)在線提問,可進(jìn)行模擬測(cè)試并通過數(shù)據(jù)統(tǒng)計(jì)功能查看最近多次的訓(xùn)練成績,也可以下載和上傳競(jìng)賽資料。
面向教師用戶各功能詳細(xì)描述如下:
1)系統(tǒng)登錄相關(guān)模塊:教師用戶通過該模塊登錄和退出系統(tǒng)。
2)學(xué)生管理模塊:可以對(duì)學(xué)生用戶以及班級(jí)信息進(jìn)行管理。
3)競(jìng)賽后臺(tái)管理模塊:教師用戶可以在競(jìng)賽前對(duì)科目、題型、題量和競(jìng)賽成績進(jìn)行管理。
4)訓(xùn)練后臺(tái)管理模塊:教師用戶可以在該模塊中進(jìn)行模擬測(cè)試管理、競(jìng)賽信息管理、答疑管理、題目詳解管理、數(shù)據(jù)統(tǒng)計(jì)管理、作業(yè)管理和資料管理。
4 用例實(shí)現(xiàn)
在該系統(tǒng)中,每個(gè)角色用戶有各自不同的用例,下面選取了學(xué)生用戶競(jìng)賽模塊和答疑模塊,通過文字和時(shí)序圖介紹用例的實(shí)現(xiàn)過程。
競(jìng)賽模塊是系統(tǒng)最主要的一個(gè)模塊,搭載系統(tǒng)各類題型和對(duì)應(yīng)的題目,該模塊通過教師后臺(tái)管理組卷并發(fā)布試卷,學(xué)生在競(jìng)賽模塊中進(jìn)行在線競(jìng)賽,并通過系統(tǒng)自動(dòng)批閱功能查看競(jìng)賽成績,同時(shí)可以保存競(jìng)賽成績,時(shí)序圖如圖5所示,
該用例是教師用戶針對(duì)學(xué)生用戶在訓(xùn)練系統(tǒng)中提出的各種競(jìng)賽相關(guān)疑問而設(shè)計(jì)的功能模塊,教師通過后臺(tái)管理功能可以查看并審核學(xué)生提出的各種疑問,并及時(shí)作出回復(fù),時(shí)序圖如圖6所示。
5 關(guān)鍵功能模塊設(shè)計(jì)
本系統(tǒng)的主要作用是為學(xué)生提供一個(gè)技能競(jìng)賽和訓(xùn)練的平臺(tái),其設(shè)計(jì)過程需要在PHP+Apache+ MySQL組合的環(huán)境下進(jìn)行開發(fā)設(shè)計(jì),各個(gè)功能模塊需要數(shù)據(jù)交互。接下來將以在線競(jìng)賽和數(shù)據(jù)統(tǒng)計(jì)模塊作為典型功能模塊設(shè)計(jì)為例,通過關(guān)鍵操作和關(guān)鍵代碼等,介紹系統(tǒng)的詳細(xì)設(shè)計(jì)過程。
5.1 在線競(jìng)賽模塊
1)在線競(jìng)賽模塊是系統(tǒng)最重要的一個(gè)模塊,該模塊的運(yùn)行需要教師用戶在后臺(tái)管理模塊中先進(jìn)行組卷,確定好試卷的科目并進(jìn)行題型和題量控制,其關(guān)鍵代碼如下:
$amount = 題量; //控制題型的數(shù)量
$num_arr = range(數(shù)值1,數(shù)值2); //題型的范圍
$num_arr = array_flip($num_arr);
$p_num = array_rand($num_arr,$amount);
通過以上代碼,可以通過教師用戶后臺(tái)組卷功能控制競(jìng)賽模塊的題型和題量,從以上代碼可知:PHP代碼中,$amount將被賦值,該數(shù)值即可控制題型的數(shù)量,range(數(shù)值1,數(shù)值2)參數(shù)設(shè)置可控制題型的范圍。
2)當(dāng)設(shè)置完題型和題量,系統(tǒng)將通過隨機(jī)抽取的方法抽取題型范圍內(nèi)的競(jìng)賽題目,由以下的關(guān)鍵代碼實(shí)現(xiàn):
$qestion_num = implode(",",$p_num).','.implode(",",$s_num); //隨機(jī)獲取的不同題型的題號(hào)
3)當(dāng)隨機(jī)題號(hào)抽取完成之后,接下來可以通過連接題庫數(shù)據(jù)庫并調(diào)用相應(yīng)的題目的方法完成在線組卷功能,其關(guān)鍵代碼如下:
include("SQL_connect.php");//連接題庫數(shù)據(jù)庫
$sql="SELECT id,question FROM ps WHERE id IN ($qestion_num)"; //根據(jù)隨機(jī)抽取的題號(hào)調(diào)用相應(yīng)的競(jìng)賽題目。
4)通過以上操作,系統(tǒng)自動(dòng)隨機(jī)抽題組卷的功能完成,接下來,通過顯示題號(hào)和題目代碼即可完成題目在頁面的顯示,其關(guān)鍵代碼如下:
<?php echo $i;?>//顯示題號(hào)
<?php echo $row['question'];?>//顯示題目內(nèi)容
學(xué)生在完成競(jìng)賽后,答案將被傳送到答案校對(duì)頁面進(jìn)行核對(duì),系統(tǒng)將根據(jù)學(xué)生先前的答題結(jié)果進(jìn)行比對(duì),生成競(jìng)賽成績。
5)在訓(xùn)練模塊中,學(xué)生通過模擬測(cè)試得到的成績可以自行保存到數(shù)據(jù)庫中,通過變量將最新的成績保存,同時(shí)將上一次的成績進(jìn)行錯(cuò)位保存,實(shí)現(xiàn)成績存儲(chǔ)的數(shù)據(jù)統(tǒng)計(jì)功能。錯(cuò)位保存實(shí)現(xiàn)的關(guān)鍵代碼如下:
5.2 數(shù)據(jù)統(tǒng)計(jì)模塊
數(shù)據(jù)統(tǒng)計(jì)模塊記錄學(xué)生訓(xùn)練的多次成績記錄,可以反映學(xué)生對(duì)競(jìng)賽知識(shí)的掌握和學(xué)習(xí)進(jìn)度,普通的數(shù)據(jù)保存為數(shù)值保存,雖然可以通過數(shù)據(jù)調(diào)用方便查看不同訓(xùn)練的成績,但因數(shù)值數(shù)據(jù)不能很好地體現(xiàn)學(xué)習(xí)進(jìn)展,因此,本系統(tǒng)使用了柱狀圖形式,直觀反映學(xué)生學(xué)習(xí)進(jìn)展,實(shí)現(xiàn)的關(guān)鍵代碼如下:
height="<?php echo 柱狀圖高度*($row_Re_score['sn]/題量)?>"
通過以上的關(guān)鍵代碼操作,可以將普通的數(shù)據(jù)通過柱狀圖直觀體現(xiàn)出來,方便學(xué)生及時(shí)掌握自身學(xué)習(xí)情況。
6 系統(tǒng)的實(shí)現(xiàn)
技能競(jìng)賽選拔和訓(xùn)練系統(tǒng)的主要功能是為學(xué)生提供競(jìng)賽和訓(xùn)練的平臺(tái),學(xué)生用戶通過注冊(cè)登錄系統(tǒng),可以進(jìn)行競(jìng)賽或訓(xùn)練模塊。在競(jìng)賽選拔階段,學(xué)生用戶登錄系統(tǒng)后將直接進(jìn)入競(jìng)賽模塊界面(如圖7所示),通過確認(rèn)競(jìng)賽題目信息和考生信息后即可以開始競(jìng)賽,在完成所有題目答題后可以提交答案,系統(tǒng)可自動(dòng)完成答案的校對(duì)工作并轉(zhuǎn)入成績顯示頁面,同時(shí)將考生答題信息傳送到成績結(jié)果顯示頁面,標(biāo)記出學(xué)生答對(duì)和對(duì)錯(cuò)的題目,對(duì)打錯(cuò)的題目進(jìn)行標(biāo)識(shí),給出正確答案。
在經(jīng)過競(jìng)賽選拔后,學(xué)生可通過登錄系統(tǒng)進(jìn)入訓(xùn)練模塊,進(jìn)行競(jìng)賽訓(xùn)練,在訓(xùn)練模塊中,可進(jìn)行查閱信息、提問和上傳資料等操作,同時(shí)可以進(jìn)行模擬測(cè)試,系統(tǒng)可以記錄學(xué)生最近模擬測(cè)試的成績,并通過柱狀圖進(jìn)行顯示(如圖8所示),通過柱狀圖,可以直觀反映學(xué)生的學(xué)習(xí)情況和進(jìn)步水平。
7結(jié)束語
本系統(tǒng)的設(shè)計(jì)目的主要是為了職業(yè)院校的各項(xiàng)技能競(jìng)賽的選拔和訓(xùn)練工作開展,方便教師,減輕工作量,提高學(xué)生競(jìng)賽和學(xué)習(xí)的積極性,目前,在本人工作的學(xué)校,已經(jīng)在過去連續(xù)三屆學(xué)校開展的技能節(jié)活動(dòng)中得到充分的應(yīng)用,相比先前傳統(tǒng)的印刷試卷再到監(jiān)考改卷的競(jìng)賽模式,該系統(tǒng)大大減輕了教師的工作量,因?yàn)樾畔鬟f的快捷,競(jìng)賽和訓(xùn)練的方便,統(tǒng)計(jì)數(shù)據(jù)的直觀,受到學(xué)生的歡迎。通過本系統(tǒng)的設(shè)計(jì),希望對(duì)職業(yè)院校技能競(jìng)賽的蓬勃開展,對(duì)職業(yè)技能人才的選拔、訓(xùn)練和培養(yǎng)上,有較好的促進(jìn)和幫助作用。
參考文獻(xiàn):
[1] 劉東菊.世界技能大賽參賽經(jīng)驗(yàn)對(duì)職業(yè)院校技能人才培養(yǎng)的啟示[J].職業(yè)教育研究, 2016(6):5-9.
[2] 張怡寧.基于B/S結(jié)構(gòu)的大學(xué)英語考試系統(tǒng)設(shè)計(jì)與實(shí)現(xiàn)[J].電子設(shè)計(jì)工程, 2016(16):25-27.
[3] 武新芳.基于PHP+MySQL的圖書館公告系統(tǒng)前臺(tái)開發(fā)[J].科技視野, 2016(3):204-205.
[4] 石坤泉.基于MySQL數(shù)據(jù)庫的圖書管理系統(tǒng)安全穩(wěn)定性研究[J].數(shù)據(jù)庫技術(shù), 2016(1):210.
[5] 朱夢(mèng)研.基于PHP的在線考試系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[D].長春: 吉林大學(xué), 2012:22.