使用php和mysql做一个小型成绩管理系统,要求有增删改查功能并在库中插入15条学生成绩信息
时间: 2024-12-17 20:19:44 浏览: 19
创建一个小型的成绩管理系统,我们可以使用PHP作为后端语言处理用户请求,MySQL作为数据库存储数据。以下是基本步骤:
1. **数据库设计**:
- 创建一个名为`students`的表,包含字段如`id`, `name`, `subject`, 和 `score`。
```sql
CREATE TABLE students (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100) NOT NULL,
subject VARCHAR(50),
score INT
);
```
2. **PHP连接数据库**:
使用`mysqli_connect()`函数建立与MySQL服务器的连接。
```php
$host = "localhost";
$db = "your_database_name";
$user = "your_username";
$pass = "your_password";
$conn = mysqli_connect($host, $user, $pass, $db);
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
```
3. **添加CRUD操作**:
a. **添加(Insert)**:将学生信息插入`students`表中。
```php
function insertStudent($name, $subject, $score) {
global $conn;
$query = "INSERT INTO students (name, subject, score) VALUES ('$name', '$subject', $score)";
if (mysqli_query($conn, $query)) {
echo "New record created successfully.";
} else {
echo "Error: " . $query . "<br>" . mysqli_error($conn);
}
}
// 示例:insertStudent('张三', '数学', 90);
```
b. **查询(Read)**:展示所有学生信息、单个学生信息等。
```php
function displayStudents() {
global $conn;
$query = "SELECT * FROM students";
$result = mysqli_query($conn, $query);
if ($result) {
while ($row = mysqli_fetch_assoc($result)) {
echo "ID: " . $row['id'] . ", Name: " . $row['name'] . ", Subject: " . $row['subject'] . ", Score: " . $row['score'] . "<br>";
}
} else {
echo "Error fetching data: " . mysqli_error($conn);
}
}
// 示例:displayStudents();
```
c. **更新(Update)**:修改特定学生的分数。
```php
function updateScore($id, $newScore) {
global $conn;
$query = "UPDATE students SET score = $newScore WHERE id = $id";
if (mysqli_query($conn, $query)) {
echo "Score updated successfully.";
} else {
echo "Error updating score: " . mysqli_error($conn);
}
}
// 示例:updateScore(1, 95); // 修改ID为1的学生分数为95分
```
d. **删除(Delete)**:删除指定的学生记录。
```php
function deleteStudent($id) {
global $conn;
$query = "DELETE FROM students WHERE id = $id";
if (mysqli_query($conn, $query)) {
echo "Record deleted successfully.";
} else {
echo "Error deleting record: " . mysqli_error($conn);
}
}
// 示例:deleteStudent(1); // 删除ID为1的学生
```
4. **插入测试数据**:
在创建表后,手动执行上述插入函数多次,或者使用SQL批量插入语句一次性插入15条数据。
现在你有了一个基础的PHP+MySQL成绩管理系统,包含了增加、删除、修改和查看学生成绩的功能。请注意,实际应用中需要考虑错误处理和安全性,比如对输入的验证以及防止SQL注入攻击。此外,为了持久化地运行程序,可以将数据库连接放在单独的文件中并使用常量管理。
阅读全文