方法1:使用session
廣東網(wǎng)站建設(shè)公司創(chuàng)新互聯(lián),廣東網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為廣東數(shù)千家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\外貿(mào)營銷網(wǎng)站建設(shè)要多少錢,請找那個售后服務(wù)好的廣東做網(wǎng)站的公司定做!
每次點下一題的時候,將當前題目的分數(shù)存入session的一個數(shù)組,
假設(shè)當前題目的分數(shù)為$score, 則$_SESSION['scores'][] = $score,
最后將$_SESSION['scores']中的所有分數(shù)加起來就行
方法2:使用頁面get傳參
每次點下一題的時候,將當前總分傳到下一個頁面,與下一個頁面的得分相加
如 第一題是3分,頁面為 test.php?q=1, 則第二題頁面為 test.php?q=2score=3,
第二題得分為4分,總分就是 4+$_GET['score']=7,則第二題頁面為 test.php?q=3score=7,
以此類推
php里面有array_rand函數(shù),你要是一道題一道題的讀出來,或許也可以嘗試一下。但是要是一下子都讀出來,即便這個函數(shù)效率可以的話,隨機取出id數(shù)組,查詢 “where id in 數(shù)組” 就不如直接在數(shù)據(jù)庫里隨機抽取記錄。
如何從數(shù)據(jù)表里隨機抽取記錄呢,想想辦法還是有一些,就是不知道效率如何。有的是說用max_id*rand(),那一條一條抽取還是可以的。怎么批量隨機抽取呢,可以試著排序,然后選取前500題,排序可以想辦法用一些函數(shù)(選取一些執(zhí)行效率高的),如何md5,sha1,這種。如果為了使結(jié)果更具有隨機性,可以把字段值再與一個隨機數(shù)運算一下。僅供參考。
========================
我想你還是用array_rand隨機抽500個id存到數(shù)組,然后遍歷數(shù)組吧。這樣也避免了題目重復(fù)。在數(shù)據(jù)庫里如果一次一條記錄隨機抽取,要考慮碰巧重復(fù)的問題。批量選取你就按上面我說的試試。
客戶端用JS的cookies保存答案/做個計時[]
弄個按紐,當時間到或按了按紐就直接提交所有答案到后臺.
如果是單選就直接用字符串來表示.
后臺分割POST過來的數(shù)據(jù)為數(shù)組和標準答案數(shù)組比較得到分數(shù).
答案可以通過數(shù)據(jù)庫保存.
數(shù)據(jù)表:
ID 問題 標準答案
ID 回答者 問題數(shù)組 標準答案數(shù)組 用戶答案數(shù)組 分數(shù)
1、題庫記錄各種試題
2、試卷是按規(guī)則生成出的試題;
3、用戶考試:用戶 關(guān)聯(lián) 試卷 及試題 ,計算得分
大致就可以了1
網(wǎng)站題目:php在線考試題庫數(shù)據(jù)表 php考試試卷
當前鏈接:http://jinyejixie.com/article42/ddccsec.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供自適應(yīng)網(wǎng)站、網(wǎng)頁設(shè)計公司、用戶體驗、網(wǎng)站設(shè)計公司、電子商務(wù)、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)