当前位置:首页 > PHP

php 选择题如何实现

2026-04-03 05:25:29PHP

实现 PHP 选择题功能

数据库设计 创建数据库表存储题目、选项和答案。例如:

  • questions 表:id, question_text, correct_answer
  • options 表:id, question_id, option_text

前端表单 使用 HTML 表单展示题目和选项,单选按钮实现选择:

<form method="post" action="submit_quiz.php">
    <p><?php echo $question['question_text']; ?></p>
    <?php foreach ($options as $option): ?>
        <input type="radio" name="answer" value="<?php echo $option['id']; ?>">
        <?php echo $option['option_text']; ?><br>
    <?php endforeach; ?>
    <input type="submit" value="提交">
</form>

后端处理 接收用户提交的答案并与正确答案比对:

php 选择题如何实现

$user_answer = $_POST['answer'];
$correct_answer = $question['correct_answer'];
if ($user_answer == $correct_answer) {
    echo "回答正确!";
} else {
    echo "回答错误!";
}

随机出题 从数据库随机选择题目显示:

$sql = "SELECT * FROM questions ORDER BY RAND() LIMIT 1";
$result = $conn->query($sql);
$question = $result->fetch_assoc();

计分功能 使用 session 存储用户得分:

php 选择题如何实现

session_start();
if ($user_answer == $correct_answer) {
    $_SESSION['score'] += 1;
}

AJAX 实现 无刷新提交答案和获取下一题:

$.post("submit_quiz.php", {answer: selectedAnswer}, function(data) {
    $("#result").html(data);
    loadNextQuestion();
});

安全考虑 对用户输入进行验证和过滤:

$user_answer = intval($_POST['answer']);

批处理功能 一次显示多道题目,批量提交:

foreach ($_POST['answers'] as $question_id => $answer) {
    // 处理每道题的答案
}

分享给朋友:

相关文章

vue项目如何实现

vue项目如何实现

安装Vue.js 通过npm或yarn安装Vue.js。确保Node.js环境已配置完成。 npm install vue # 或 yarn add vue 创建Vue项目 使用Vue CLI工具快…

vue如何实现递归

vue如何实现递归

递归组件的实现方法 在Vue中实现递归组件通常用于渲染树形结构或嵌套数据。核心思路是组件在其模板中调用自身,但需注意终止条件以避免无限循环。 定义递归组件 组件需设置name选项,才能在模板中调用自…

vue如何实现高亮

vue如何实现高亮

实现文本高亮的方法 在Vue中实现文本高亮通常可以通过以下几种方式完成: 使用v-html指令结合字符串替换 通过将需要高亮的文本部分替换为HTML标签(如<span class="highl…

vue如何实现级联

vue如何实现级联

实现级联选择器的基本方法 在Vue中实现级联选择器通常使用现成的组件库或自定义组件。以下是两种常见方式: 使用Element UI的Cascader组件 安装Element UI后,直接使用el-c…

java如何实现分布式

java如何实现分布式

分布式系统实现方式 Java实现分布式系统通常涉及多种技术和框架,以下是几种核心方法: 基于RPC框架 使用Dubbo、gRPC等RPC框架实现服务间的远程调用。Dubbo提供高性能的RPC通信,支…

vue如何实现退出

vue如何实现退出

退出登录的实现方法 在Vue中实现退出登录功能通常涉及清除用户凭证、重置应用状态并跳转到登录页。以下是具体实现方式: 清除本地存储的Token 使用localStorage或sessionStora…