2012-05-07 14 views
0

我有多項選擇問答題是這樣PHP測驗顯示號碼接聽

<p>1. Is Manhattan near New York?<br> 
    <input type="radio" name="ans1" value="3"> 
    Yes<br> 
    <input type="radio" name="ans1" value="2"> 
    Maybe<br> 
    <input type="radio" name="ans1" value="1"> 
    No</p> 
    <p>2. Do you like Indian food?<br> 
    <input type="radio" name="ans2" value="1"> 
    Some times<br> 
    <input type="radio" name="ans2" value="3"> 
    Never<br> 
    <input type="radio" name="ans2" value="2"> 
    Always</p> 

頁發送到自身並檢查一個PHP頁面,如果答案是對還是錯這樣

if($ans1 == "3") { 
$test_complete .="Question one is <span class='green'>correct</span>, well done!<br/>"; 
}else{ 
$test_complete .="Question one is <span class='red'>incorrect</span>!<br/>"; 
} 
// change the quest2 to the right answer 
if($ans2 == "2") { 
$test_complete .="Question two is <span class='green'>correct</span>, well done!<br/>"; 
}else{ 
$test_complete .="Question two is <span class='red'>incorrect</span>!<br/>"; 
} 

現在不是講的是回答一個或兩個是正確的用戶我想在何處運行它計算的正確和錯誤答案的人數的數量和與一個箱子沿其顯示兩個表盒計數器問題總數。

+0

「你喜歡印度食物?」 「從不」「你的回答不正確!」 –

回答

1

有多種方法可以做到這一點。我會有一系列與問題相對應的正確問題,然後進行比較。例如:

$correct_answers = array('3', '2'); 
for ($i = 0; $i < $number_of_questions; $i++) 
{ 
    $ans_var = 'ans'.$i; 
    if ($_POST[$ans_var] == $correct_answers[$i]) 
    { 
     $score++; 
    } 
} 
1

這樣子......?

$result = $ans1 == 3; 
$result += $ans2 == 2; 
$result += $ans3 == 1; 

echo "You got $result/3 questions right"; 

http://codepad.org/6zBQXQIT

+0

如何顯示錯誤答案的數量呢? – ABI

+0

@ABI,除非你動態地添加問題,那麼你應該只能數它們...... – Petah

0

如果我理解正確的問題...

session_start(); 
if (!isset($_SESSION['total'])){$_SESSION['total']=0;} 
if (!isset($_SESSION['correct'])){$_SESSION['correct']=0;} 
if($ans1 == "3") {$_SESSION['correct']+=1;} 
if($ans2 == "2") {$_SESSION['correct']+=1;} 
if (isset($ans1) || isset($ans2)) {$_SESSION['total']+=1} 
echo '<table><tr><td>Correct answers:</td><td>'.$_SESSION['correct'].'</td></tr>'; 
echo '<tr><td>Wrong answers:</td><td>'.$_SESSION['total']-$_SESSION['correct'].'</td></tr>'; 
echo '<tr><td>Total answers</td><td>'.$_SESSION['total'].'</td></tr></table>'; 
+0

你爲什麼要將它存儲在會話中? – Petah

+0

我以爲會有幾個問題的帖子,但我不明白,我可能有問題。 –