要实现在线考试和评分,可以使用PHP和XML的组合来完成。
首先,创建一个XML文件来存储考试题目和答案。可以使用以下格式:
<exam>
<question>
<text>问题1</text>
<options>
<option>A</option>
<option>B</option>
<option>C</option>
<option>D</option>
</options>
<answer>A</answer>
</question>
<question>
<text>问题2</text>
<options>
<option>A</option>
<option>B</option>
<option>C</option>
<option>D</option>
</options>
<answer>B</answer>
</question>
...
</exam>
接下来,创建一个PHP页面来加载XML文件,并显示考试题目和选项。可以使用以下代码:
<?php
$xml = simplexml_load_file('exam.xml');
foreach ($xml->question as $question) {
echo '<p>' . $question->text . '</p>';
echo '<ul>';
foreach ($question->options->option as $option) {
echo '<li>' . $option . '</li>';
}
echo '</ul>';
}
?>
然后,创建一个提交表单的PHP页面来接收学生的答案,并计算得分。可以使用以下代码:
<?php
$xml = simplexml_load_file('exam.xml');
$score = 0;
foreach ($xml->question as $index => $question) {
$answer = $_POST['answer' . $index];
if ($answer == $question->answer) {
$score++;
}
}
echo '得分:' . $score;
?>
最后,创建一个包含表单的HTML页面,让学生填写答案并提交。可以使用以下代码:
<form action="score.php" method="post">
<?php
foreach ($xml->question as $index => $question) {
echo '<p>' . $question->text . '</p>';
echo '<ul>';
foreach ($question->options->option as $option) {
echo '<li><input type="radio" name="answer' . $index . '" value="' . $option . '">' . $option . '</li>';
}
echo '</ul>';
}
?>
<input type="submit" value="提交">
</form>
这样,学生填写答案后,点击提交按钮,就会跳转到评分页面,并显示得分结果。
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站