2012-04-11 61 views
2

我有一個PHP腳本和MSSQL表,我被存儲在$right_answer在變量接聽鍵和用戶選擇的在$user_answer_select答案的格式是這樣的PHP測驗腳本答案亮點

5+10? 

A) 10 
B) 15 
C) 20 
D) 25 
E) 50 

Answer key: B 

我想要什麼要做的是在B旁邊放置一個複選標記,如果它是正確的,並且X如果是錯誤的,我將如何在這裏做if else語句?

這是代碼我現在有

if(($user_answer_select == $right_answer) && $user_answer_select == 'a') $a_sel = "<img src=\"tick_icon.gif\">"; 
else if(($user_answer_select == $right_answer) && $user_answer_select == 'b') $b_sel = "<img src=\"tick_icon.gif\">"; 
else if(($user_answer_select == $right_answer) && $user_answer_select == 'c') $c_sel = "<img src=\"tick_icon.gif\">"; 
else if(($user_answer_select == $right_answer) && $user_answer_select == 'd') $d_sel = "<img src=\"tick_icon.gif\">"; 
else if(($user_answer_select == $right_answer) && $user_answer_select == 'e') $e_sel = "<img src=\"tick_icon.gif\">"; 

這是錯誤的,因爲一些沒有答案是突出顯示爲真實的問題。有什麼辦法做到這一點?

+3

我說得對不對,你沒有一個具體的問題,只是想用它來編寫解決您的問題的代碼? – vissi 2012-04-11 22:29:39

+0

我將展示我在這裏有什麼 – Grigor 2012-04-11 22:30:37

+1

曾聽說過數組? – 2012-04-11 22:32:15

回答

1
$answers = array ("A"=>10, "B"=>15, "C"=>20, "D"=>25, "E"=>50); 
$right_answer = "B"; 
$user_selected_answer = "A"; 

echo "5+10?<br/>"; 

foreach ($answers as $key => $value) { 
    echo $key.") ".$value; 
    if ($value === $user_selected_answer) { 
    if ($value === $right_answer){ echo "check!"; } 
    else { echo "X"; } 
    } 
    echo "<br/>"; 
} 

echo "Answer key: $right_answer"; 
+0

謝謝,我會檢查出來,讓你知道它是否工作 – Grigor 2012-04-12 08:23:47

1
if ($user_answer_select == $right_answer) { 
    $correct = true; 
} else { 
    $correct = false; 
} 

然後在表格上的正確答案:

<?php echo $correct == true ? 'x' : ''; ?>