崔靜靜+++項小書+++吳燕紅
摘要:該文基于簡易、靈活的PHP語言及Sql Server數(shù)據(jù)庫技術(shù),設(shè)計并實現(xiàn)網(wǎng)絡(luò)教學(xué)平臺。該平臺重點(diǎn)實現(xiàn)了在線測試、在線答疑等功能,為課堂教學(xué)提供了有益補(bǔ)充,增強(qiáng)了學(xué)習(xí)效果。
關(guān)鍵詞:網(wǎng)絡(luò)教學(xué)平臺;在線測試;在線答疑;PHP
中圖分類號:G642 文獻(xiàn)標(biāo)識碼:A 文章編號:1009-3044(2015)11-0076-02
Design and Implementation of Network Teaching Platform Based on PHP
CUI Jing-jing, XIANG Xiao-shu, WU Yan-hong
(Anhui Normal University, School of Mathematics and Computer Science, Wuhu 241003, China)
Abstract: A network teaching platform is designed and implemented based on simple and flexible PHP language and Sql Server database technology. The platform is focused on achieving the online test, online answer, and other functions. It can provide a useful supplement to classroom teaching, and enhance the learning effect.
Key words: metwork teaching platform; online test; online answer; PHP
因傳統(tǒng)課堂教學(xué)存在如下不足[1]:1)課堂內(nèi)容難以重復(fù)展現(xiàn);2)只能圍繞教材展開教學(xué)內(nèi)容,很難在有限時間內(nèi)對內(nèi)容進(jìn)行延伸;3)教師的教與學(xué)生的學(xué)需同步;4)教師與學(xué)生的交流有限。因此,網(wǎng)絡(luò)教學(xué)平臺就顯得尤為重要。
PHP作為一種被廣泛應(yīng)用、運(yùn)行在服務(wù)器端的腳本語言,因其具有開源、語法簡單、功能強(qiáng)大、靈活易用、跨平臺以及高效率等優(yōu)點(diǎn),成為開發(fā)動態(tài)網(wǎng)頁的流行工具[5]。另外,它融合了C、java、perl等現(xiàn)代編程語言的某些特性,有了自己的配置標(biāo)準(zhǔn),即PHP、apache和mysql的組合[3]。因此,本文利用PHP和Sql Server技術(shù)開發(fā)網(wǎng)絡(luò)教學(xué)平臺。
1 平臺主要功能
該網(wǎng)絡(luò)教學(xué)平臺由前臺學(xué)習(xí)模塊和后臺管理模塊組成[2, 6]。
1.1 系統(tǒng)前臺
前臺功能結(jié)構(gòu)如圖1所示,包括:1)課程簡介:介紹教學(xué)大綱、實驗大綱、考試大綱、教學(xué)進(jìn)度表、實驗進(jìn)度表等教學(xué)文檔。2)理論學(xué)習(xí):通過該模塊可預(yù)習(xí)、復(fù)習(xí)課堂教學(xué)內(nèi)容,可針對興趣和學(xué)習(xí)進(jìn)度自主選擇學(xué)習(xí)內(nèi)容。3)實驗指導(dǎo):提供實驗操作指導(dǎo),并通過實驗案例演示,學(xué)生可邊看邊操作。4)交流答疑:提供師生相互交流的機(jī)會,引導(dǎo)學(xué)生討論,教師進(jìn)行答疑。5)在線測試:學(xué)生可按章節(jié)進(jìn)行自我測試,各章節(jié)練習(xí)題、綜合練習(xí)題分類存放在數(shù)據(jù)庫中,結(jié)合PHP前臺反饋、查詢技術(shù)實現(xiàn)動態(tài)交互和分面顯示。6)資源下載:課程相關(guān)資料供用戶下載。
圖1 系統(tǒng)前臺功能
1.2 系統(tǒng)后臺
后臺功能結(jié)構(gòu)如圖2所示,包括:(1)用戶管理:該平臺提供了管理員、教師、學(xué)生、匿名用戶四種不同權(quán)限的身份,其中擁有最高權(quán)限的管理員,可添加、刪除用戶。(2)課件管理:管理員可上傳、刪除課件;教師可上傳課件,并可修改和刪除自己上傳的課件;學(xué)生可下載課件。(3)試題庫管理:管理員可添加、刪除、修改試題;教師可添加試題,并可修改和刪除自己添加的試題;學(xué)生可在線答題并查看成績。(4)教學(xué)資源管理:管理員可上傳、刪除供下載的教學(xué)資料;教師可上傳資料,并可修改和刪除自己上傳的資料;學(xué)生可下載資料;匿名用戶只擁有瀏覽權(quán)。(5)論壇管理:管理員可刪除帖子及回帖;教師可發(fā)布公告、刪除和修改自己發(fā)布的公告;學(xué)生可修改和刪除自己發(fā)表的主帖和回帖。
2 關(guān)鍵技術(shù)與實現(xiàn)
采用apache平臺,運(yùn)用PHP語言進(jìn)行開發(fā),并通過MySql數(shù)據(jù)庫進(jìn)行后臺連接,實現(xiàn)平臺相關(guān)功能。
圖2 系統(tǒng)后臺功能
2.1 關(guān)鍵技術(shù)
Apache是一款Web服務(wù)器軟件,它可以運(yùn)行在幾乎所有廣泛使用的計算機(jī)平臺上,其特點(diǎn)是快速、可靠、易擴(kuò)展[7]。由于PHP能夠作為Apache web服務(wù)器的語言執(zhí)行,能更快速地執(zhí)行動態(tài)網(wǎng)頁,因此,Apache作為本系統(tǒng)的開發(fā)平臺是非常合適的[4]。MySql是一個開源數(shù)據(jù)庫,用戶可根據(jù)自身需要,對源碼進(jìn)行修改以適合程序。它有體積小、速度快、成本低等特點(diǎn),是開發(fā)中小型網(wǎng)站的必備技術(shù)[3]。
2.2 數(shù)據(jù)庫的設(shè)計
鑒于后臺功能,需五個數(shù)據(jù)表:Member(會員)、Courseware(課件)、Test(測試題)、Eresource(資源)和Board(留言板)。其中圖片以二進(jìn)制形式存儲,而課件、測試題及資源以文件方式保存。以會員為例,其結(jié)構(gòu)設(shè)計如表1所示:
表1 Member數(shù)據(jù)表
2.3 在線測試功能的實現(xiàn)
在線測試是教學(xué)平臺必不可少的模塊,用戶進(jìn)入測試界面后,服務(wù)器會隨機(jī)生成試卷,在結(jié)束后完成試卷的保存與自動評分,同時將正確答案反饋到用戶端。實現(xiàn)“自動分發(fā)試卷”功能的部分代碼如下所示。
$titles = $db->query("SELECT * FROM ".$db_prefix."title WHERE $conditions ORDER BY id ASC"); //獲取題目列表
$titlelist = false; //題目列表獲取失敗
$int = 0;//計數(shù)變量
while($title = $db->fetch_array($titles))
{ //當(dāng)獲取到題目表單后,從題目表單中獲得考試題目
$int++;
$choices = false; //考試題目尚未選擇
$tests = $db->query("SELECT * FROM ".$db_prefix."choice WHERE
extends=$title[id] ORDER BY id ASC");
$i=0;
while($test=$db->fetch_array($tests))
{ //獲取到考試題目
$i++;
$checked = $test["IsDefault"]?"checked" : false; //判斷題是否被選中
if($title[choicetype]=="radio") //題目類型為單選題
{ $choices="
value=\"$test[choice]\" $checked check=\"^0$\"
warning=\"$title[title]\"> $test[choice]"; }
else //題目類型為多選題
{$choices="
value=\"$test[choice]\" $checked check=\"^0{1,}$\"
warning=\"$title[title]\"> $test[choice]"; }
}
}
2.4 在線答疑功能的實現(xiàn)
該平臺以論壇形式為師生提供一個討論區(qū)。在該討論區(qū)內(nèi),用戶可通過發(fā)帖子進(jìn)行交流,系統(tǒng)具有編輯、發(fā)送、刪除帖子的功能。核心代碼如下所示。
$_POST['ptime']=time(); //評論時間
$_POST['ip']=sprintf('%u',ip2long($_SERVER['REMOTE_ADDR']));
if(time()-$_SESSION['user_info']['last_comm_time']>=PUBLISH_INTERVAL_COMMENT)
{ //若發(fā)表成功,則返回數(shù)據(jù)到客戶端,否則返回0
if(D('comment')->post_comment($_POST)){
$user=D('user');//用戶模型
$uid=$_SESSION['user_info']['id'];
$user->add_grade($uid,B_COMMENT);
$_SESSION['user_info']['last_comm_time']=time();
……
}
3 結(jié)束語
基于PHP技術(shù)設(shè)計并開發(fā)了網(wǎng)絡(luò)教學(xué)平臺,使學(xué)校的軟硬件資源得到充分利用,讓教師更高效更方便地進(jìn)行教學(xué)活動,讓學(xué)生可以隨時隨地的進(jìn)行自主學(xué)習(xí),從而提高了學(xué)習(xí)質(zhì)量和效果。
參考文獻(xiàn):
[1] 王華東. 大學(xué)計算機(jī)基礎(chǔ)網(wǎng)絡(luò)課程的設(shè)計與實現(xiàn)[J]. 計算機(jī)時代, 2007(11): 1-3.
[2] 周曉新. 基于B/S模式的網(wǎng)絡(luò)教學(xué)平臺的設(shè)計與實現(xiàn)[D]. 天津: 天津師范大學(xué), 2009.
[3] 孫星. 淺談PHP技術(shù)[J]. 中國新科技新產(chǎn)品, 2011(10): 31-32.
[4] 劉保欣. 計算機(jī)程序設(shè)計精品課程網(wǎng)站的研究與設(shè)計[J]. 電子制作, 2014(10): 124-125.
[5] 高洛峰. 細(xì)說PHP[M]. 北京: 電子工業(yè)出版社, 2012.
[6] 田豐春. 大學(xué)計算機(jī)基礎(chǔ)網(wǎng)絡(luò)教學(xué)平臺的構(gòu)建[J]. 南京曉莊學(xué)院學(xué)報, 2010(3).
[7]Apache.百度百科http://baike.baidu.com/link?url=rwmQiu8zNZtdis28mNbSlcJwR-4pqhSKGFZ5508HtkEMYulr7evKxI31RwxdPSrMi89fwujBUaeKlnW37LVB_yen9XaAJUDgX_0Ss7Nx2u.