1. 题目一:用户登录系统
题目描述
编写一个简单的用户登录系统,用户需要输入用户名和密码,系统验证用户名和密码是否正确,如果正确则显示“登录成功”,否则显示“用户名或密码错误”。
解题思路
- 使用HTML表单收集用户输入的用户名和密码。
- 使用PHP脚本处理表单提交的数据。
- 连接数据库,查询用户名和密码是否匹配。
- 根据查询结果返回相应的提示信息。
代码示例
<?php
// 假设数据库连接信息
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 获取用户输入
$username = $_POST['username'];
$password = $_POST['password'];
// 查询数据库
$sql = "SELECT * FROM users WHERE username='$username' AND password='$password'";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
echo "登录成功";
} else {
echo "用户名或密码错误";
}
$conn->close();
?>
2. 题目二:图书管理系统
题目描述
编写一个简单的图书管理系统,包括图书的增删改查功能。
解题思路
- 使用HTML表单收集用户输入的图书信息。
- 使用PHP脚本处理表单提交的数据。
- 连接数据库,执行相应的增删改查操作。
- 显示图书列表。
代码示例
<?php
// 假设数据库连接信息
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 添加图书
if (isset($_POST['add'])) {
$title = $_POST['title'];
$author = $_POST['author'];
$sql = "INSERT INTO books (title, author) VALUES ('$title', '$author')";
if ($conn->query($sql) === TRUE) {
echo "图书添加成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
}
// 删除图书
if (isset($_POST['delete'])) {
$id = $_POST['id'];
$sql = "DELETE FROM books WHERE id=$id";
if ($conn->query($sql) === TRUE) {
echo "图书删除成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
}
// 修改图书
if (isset($_POST['update'])) {
$id = $_POST['id'];
$title = $_POST['title'];
$author = $_POST['author'];
$sql = "UPDATE books SET title='$title', author='$author' WHERE id=$id";
if ($conn->query($sql) === TRUE) {
echo "图书修改成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
}
// 显示图书列表
$sql = "SELECT * FROM books";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "ID: " . $row["id"]. " - Title: " . $row["title"]. " - Author: " . $row["author"]. "<br>";
}
} else {
echo "0 结果";
}
$conn->close();
?>
3. 题目三:在线投票系统
题目描述
编写一个简单的在线投票系统,用户可以投票给不同的候选人。
解题思路
- 使用HTML表单收集用户选择的候选人。
- 使用PHP脚本处理表单提交的数据。
- 连接数据库,更新候选人的得票数。
- 显示候选人的得票数。
代码示例
<?php
// 假设数据库连接信息
$servername = "localhost";
$username = "root";
$password = "";
$dbname = "test";
// 创建连接
$conn = new mysqli($servername, $username, $password, $dbname);
// 检查连接
if ($conn->connect_error) {
die("连接失败: " . $conn->connect_error);
}
// 获取用户选择的候选人
$candidate = $_POST['candidate'];
// 更新候选人的得票数
$sql = "UPDATE candidates SET votes=votes+1 WHERE name='$candidate'";
if ($conn->query($sql) === TRUE) {
echo "投票成功";
} else {
echo "Error: " . $sql . "<br>" . $conn->error;
}
// 显示候选人的得票数
$sql = "SELECT * FROM candidates";
$result = $conn->query($sql);
if ($result->num_rows > 0) {
while($row = $result->fetch_assoc()) {
echo "候选人: " . $row["name"]. " - 得票数: " . $row["votes"]. "<br>";
}
} else {
echo "0 结果";
}
$conn->close();
?>
以上是三道PHP期末考试编程练习题的解析及解题思路详解。希望对大家有所帮助!
