以下是一个简单的PHP答题软件实例,我们将使用PHP和MySQL来构建一个基本的在线考试系统。

1. 系统需求

需求项描述
用户管理允许管理员添加、删除和修改用户信息
题库管理允许管理员添加、删除和修改题目信息
考试管理允许用户进行在线考试,管理员可以查看考试结果
权限管理管理员和普通用户有不同的权限

2. 技术栈

  • PHP
  • MySQL
  • HTML
  • CSS
  • JavaScript

3. 数据库设计

以下是一个简单的数据库设计示例:

```sql

-- 创建用户表

CREATE TABLE users (

id INT AUTO_INCREMENT PRIMARY KEY,

username VARCHAR(50) NOT NULL,

password VARCHAR(50) NOT NULL,

role ENUM('admin', 'user') NOT NULL

);

-- 创建题目表

CREATE TABLE questions (

id INT AUTO_INCREMENT PRIMARY KEY,

question TEXT NOT NULL,

option1 TEXT NOT NULL,

option2 TEXT NOT NULL,

option3 TEXT NOT NULL,

option4 TEXT NOT NULL,

answer ENUM('1', '2', '3', '4') NOT NULL

);

-- 创建考试记录表

CREATE TABLE exams (

id INT AUTO_INCREMENT PRIMARY KEY,

user_id INT NOT NULL,

score INT NOT NULL,

created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP,

FOREIGN KEY (user_id) REFERENCES users(id)

);

```

4. PHP代码示例

用户登录

```php

// 登录验证

session_start();

if (isset($_POST['username']) && isset($_POST['password'])) {

$username = $_POST['username'];

$password = $_POST['password'];

// 连接数据库

$conn = new mysqli('localhost', 'root', 'password', 'database_name');

// 检查连接

if ($conn->connect_error) {

die("