我正在創建我的第一個PHP腳本,用於測試用戶的顱神經聯繫;具體而言,顱神經的名稱被顯示給用戶,並且他們應該點擊對應於顱神經名稱的正確數字。正在顯示PHP問答遊戲的正確答案
我會先發布我的代碼和我的問題後:
<?php
$generated_nerve_number = mt_rand(1,12);
switch($generated_nerve_number) {
case '1':
echo "Olfactory";
break;
case '2':
echo "Optic";
break;
case '3':
echo "Oculomotor";
break;
case '4':
echo "Trochlear";
break;
case '5':
echo "Trigeminal";
break;
case '6':
echo "Abducens";
break;
case '7':
echo "Facial";
break;
case '8':
echo "Vestibulocochlear";
break;
case '9':
echo "Glossopharyngeal";
break;
case '10':
echo "Vagus";
break;
case '11':
echo "Accessory";
break;
case '12':
echo "Hypoglossal";
break;
}
?>
<html>
<head>
<title>Cranial Nerves Test</title>
</head>
<body>
<p>Select the cranial nerve number below associated with the name of the cranial nerve given above:</p>
<form action="cranial.php" method="POST">
<?php
echo "Cranial Number: ";
for($i = 1; $i <= 12; $i++) {
echo "<input type=\"submit\" name=\"nerve_$i\" class=\"nerve_number\" value=\"$i\">";
}
?>
<?php
$submit = (isset($_POST['nerve_' . $i])) ? $_POST['nerve_' . $i] : NULL;
if($submit) {
$selected_nerve_number = $_POST['nerve_' . $i];
if($generated_nerve_number == $selected_nerve_number) {
echo "That is correct!";
} else {
echo "Sorry that is incorrect.";
}
}
?>
</form>
</body></html>
我的思維過程的簡要概述:我隨機產生1-12之間的數字,並使用switch語句,這個數字將呼應顱神經的名字。我使用了for循環來生成提交按鈕,其名稱包含與其顯示值相對應的顱神經數量。最後,我檢查答案是否正確的計劃是使用if語句將隨機生成的數字與所選數字進行比較,如果是,則輸出一條消息,說明它們是正確的。
這是問題出現的地方:當我點擊任何按鈕時,無論是否正確答案,頁面都會刷新,而不會對答案是對還是錯。有人可以指出缺陷嗎?
此外,如果在此腳本中有某種更優化的方法,請讓我知道。
在此先感謝。
你創建12個輸入[type = submit] ... – voodoo417