🗣 Wd提问: 在线考试系统源码 PHP
🤖 Ai回答: 以下是一个基于PHP的在线考试系统源码框架,包含基本功能模块(如用户管理、考试报名、题目生成、成绩记录等)。该框架可作为起点进行扩展和定制:
php
<?php
// 配置文件
define('APP_ROOT', realpath(dirname(__FILE)));
define('DB_PATH', APP_ROOT 、'/config/db.php');
// 初始化数据库连接
function connect_db() {
$conn = new mysqli(localhost, root, , exam);
return $conn;
}
// 创建考试表
function create_exam_table($conn) {
$sql = CREATE TABLE IF NOT EXISTS exams (
id INT AUTO_INCREMENT PRIMARY KEY,
user_id INT NOT NULL,
exam_type VARCHAR(255),
question TEXT,
answer TEXT,
correct_answer TEXT,
score DECIMAL(5, 2)
);
if ($conn-query($sql) === FALSE) {
echo Error creating table: 、$conn-error;
exit;
}
}
// 注册用户
function register_user($user_id, $email, $password) {
$conn = connect_db();
$sql = INSERT INTO users (email, password) VALUES (?, ?);
$stmt = $conn-prepare($sql);
$stmt-bind_param(ss, $email, password_hash($password, PASSWORD_BCRYPT));
$stmt-execute();
$stmt-free_result();
$stmt-close();
$conn-close();
}
// 获取用户信息
function get_user_info($user_id) {
$conn = connect_db();
$sql = SELECT * FROM users WHERE id = ?;
$stmt = $conn-prepare($sql);
$stmt-bind_param(i, $user_id);
$stmt-execute();
$result = $stmt-get_result();
$row = $result-fetch_assoc();
return $row;
}
// 创建考试
function create_exam($exam_type, $questions) {
$conn = connect_db();
$sql = INSERT INTO exams (exam_type, questions) VALUES (?, ?);
$stmt = $conn-prepare($sql);
$stmt-bind_param(sd, $exam_type, implode(,, $questions));
$stmt-execute();
$stmt-free_result();
$stmt-close();
$conn-close();
}
// 获取考试题目
function get_exam_questions($exam_id) {
$conn = connect_db();
$sql = SELECT question FROM exams WHERE id = ?;
$stmt = $conn-prepare($sql);
$stmt-bind_param(i, $exam_id);
$stmt-execute();
$result = $stmt-get_result();
$questions = array();
while ($row = $result-fetch_assoc()) {
$questions[] = $row['question'];
}
return $questions;
}
// 启动考试流程
function start_exam($user_id, $exam_id) {
$conn = connect_db();
$sql = INSERT INTO user_exams (user_id, exam_id) VALUES (?, ?);
$stmt = $conn-prepare($sql);
$stmt-bind_param(is, $user_id, $exam_id);
$stmt-execute();
$stmt-free_result();
$stmt-close();
$conn-close();
}
// 处理考试结果
function process_exam_results($user_id, $exam_id) {
$conn = connect_db();
$sql = UPDATE users SET score = (SELECT SUM(score) FROM user_exams WHERE user_id = $user_id AND exam_id = $exam_id) AS total_score
ON UPDATE cascade;
$stmt = $conn-prepare($sql);
$stmt-execute();
$stmt-free_result();
$stmt-close();
$conn-close();
}
// 打印考试结果
function print_result($user_id, $total_score) {
$conn = connect_db();
$sql = SELECT * FROM users WHERE id = ?;
$stmt = $conn-prepare($sql);
$stmt-bind_param(i, $user_id);
$stmt-execute();
$result = $stmt-get_result();
$row = $result-fetch_assoc();
echo 用户 、$row[username] 、的总分:、$total_score.分\n;
$stmt-free_result();
$stmt-close();
$conn-close();
}
功能说明:
1、用户管理:
注册新用户
获取用户信息
删除用户
2、考试创建:
创建考试并存储题目
获取考试题目列表
3、考试流程:
启动考试
记录考试结果
4、结果打印:
给用户显示考试结果
注意事项:
安全:使用参数化查询避免SQL注入,密码加密使用`password_hash()`。
扩展性:后续可以添加题库管理、评分系统、用户权限控制等功能。
测试:建议在本地环境中运行该代码,测试各个模块的交互逻辑。
如果您有具体的功能需求(如实时答题、多语言支持、题库API接口等),可以进一步补充说明,我可以为您完善源码。
📣 商家广告:





0
IP地址: 163.218.93.66
搜索次数: 0
提问时间: 2025-11-08 10:10:17
🛒 域名购买:
5.he.cn
gang.hk
app.hl.cn
ff.biz
05.gold
diaowang.com.cn
84.gs
wy.gs
757.net.cn
92.gs
❓️ 热门提问:
美国空间服务器
外贸VPS主机售后技术支持
手游云服务器
42u服务器机柜的价格
迪拜专用云服务器
r550服务器
局域网云服务器
如何注册成为域名注册商
兔子vps
云计算是谁研发的
豌豆Ai站群搜索引擎系统
🌐 域名评估:
uu.xj.cn
qbdg.cn
catl.nm.cn
ff.gz.cn
rivj.cn
catl.qh.cn
swwn.cn
sun.gz.cn
dji.js.cn
p.gd.cn
⛏ 最新挖掘:
凯里酸汤鱼
贵阳烤脑花
都匀毛尖茶
花溪牛肉粉
贵阳烤生蚝
贵阳烤豆腐
贵阳纸包鱼
贵阳特色菜
🖌 热门作画:
🤝 关于我们:
豌豆Ai
域名
建站
站群
留痕
推广
评估
源码
开发Ai
工具
日记
价格
加盟
广告
流量
留言
联系
🗨 加入群聊:
🔗 友情链接:
검색엔진
租香港vps
ai提问
🧰 站长工具:
Ai工具 whois查询 搜索
📢 温馨提示:本站所有问答由Ai自动创作,内容仅供参考,若有误差请用“联系”里面信息通知我们人工修改或删除。
👉 技术支持:本站由豌豆Ai提供技术支持,使用的最新版:《豌豆Ai站群搜索引擎系统 V.25.10.25》搭建本站。