在各個網路資源當中我們可以看到有許多製作線上測驗的方式,在製作線上測驗的時候,一般我們會考慮下面幾點要求:
一般最常用來製作線上測驗的方式包括 JavaScript 以及 CGI,以 JavaScript 製作測驗時通常測驗的答案就在原始檔案中,比較有經驗的網路使用者都可以在原始檔中看到答案,以 CGI 來製作的線上測驗安裝起來比較複雜,可是就沒有這個問題,下面我們介紹一組 CGI 程式用來製作線上測驗:
一、製作題目:
1. 請按下上面連結,以其為範本製作題目
2. 請注意設定下列資料
a. 外層表單 Action 設為步驟三中計分的 CGI, 例如:http://cyber.cs.ntou.edu.tw/cgi-bin/cgiwrap/~pyting/OnlineTest.pl
b. 隱藏的輸入元件 RecordFile 的內容設為測驗結果的記錄檔案,計分的 CGI 會將每一個繳交測驗結果的資料記錄在這個檔案中,檔案名稱可以是伺服器上相對於 CGI 檔案的路徑名稱或是絕對的路徑名稱
c. 隱藏的輸入元件 AnswerFile 的內容設為標準答案的檔案名稱,計分的 CGI 會讀取這個檔案內的資料和所繳交的答案比對,資檔案名稱可以是伺服器上相對於 CGI 檔案的路徑名稱或是絕對的路徑名稱
d. 隱藏的輸入元件 NumberOfTests 的內容必須設定為測驗的總題數
e. 測驗中如果是是非題或是單選題時,所有選項按鈕 (RadioButton) 的名稱請設為相同 -- test##,其中 ## 代表題號,CheckedValue 欄位則填入其選項的號碼 (例如:第三個選項則填入 3)
f. 測驗中如果多選題時,所有選項按鈕 (RadioButton) 的名稱請設為 test##.**,其中 ## 代表題號,** 則代表選項號碼,CheckedValue 欄位則填入其選項的號碼 (例如:第三個選項則填入 3)
二、指定標準答案檔案內容:
test1, 30, 1 test2, 30, 2 test3, 40, 3, 4
其中三個欄位的內容分別為 1. 題目 ID, 2. 分數, 3. 正確答案 (第三題是複選題有兩個答案)
將此檔案上傳到伺服器上,例如 ~/www/cgi-bin/test1Answer.dat
三、設定存取權限:
如果標準答案檔案放在 ~/www/cgi-bin 資料夾中的話,不需要另外設定存取權限,如果是放在 ~/www/ 底下其它的資料夾中的話,需要設定該資料夾內 .htaccess 檔案的內容來更改存取權限限制存取文件的人員,例如:
.htaccess 檔案內容
AuthName test AuthType Basic AuthUserFile /home/.../www/.htpasswd <Limit GET POST> require user pyting </Limit>.htpasswd 檔案內容
pyting:uHm74jmz9bsfs hello:nMrAQDyaLsk5w密碼的設定請參考 http://squall.cs.ntou.edu.tw/html/htaccess.html 或是由 /etc/passwd 中拷貝出來,當然答案檔案和記錄檔案也可以根本不放在 ~/www 資料夾中,就不怕別人透過網路看到了。
四、安裝 CGI 程式:
請下載 OnlineTest.pl 程式,並且將它上傳到你的伺服器上可以放 CGI 的資料夾內,注意將檔案設為可以執行 (chmod +x OnlineTest.pl),例如:如果伺服器上有安裝 cgiwrap 的話,應該把 CGI 程式放到 ~/www/cgi-bin/ 下的任一子目錄內
如此測驗應該已經可以運作了!!
五、安裝檢查結果檔案 (步驟) 的 CGI 程式 ReadOnlineTestResult.pl
請下載 ReadOnlineTestResult.pl 程式,此程式有四種運作模式:
1. 按照完成測驗的時間表列出所有學生的資料
2. 按照學號表列出所有學生的資料
3. 按照成績表列出所有學生的資料
4. 統計所有題目答對的比例
或是