用php写一个图书管理系统
时间: 2023-06-14 14:07:45 浏览: 98
好的,下面我给你提供一个简单的图书管理系统的代码框架,你可以在此基础上进行修改和完善。
首先,我们需要创建一个数据库,用来存储图书信息。可以创建一个名为“library”的数据库,其中包含一个名为“books”的数据表。下面是该数据表的结构:
```
CREATE TABLE `books` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`title` varchar(255) NOT NULL,
`author` varchar(255) NOT NULL,
`publisher` varchar(255) NOT NULL,
`isbn` varchar(20) NOT NULL,
`year` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
```
然后,我们来编写 PHP 代码。首先是连接数据库的代码:
```
<?php
$host = 'localhost';
$user = 'username';
$password = 'password';
$dbname = 'library';
$conn = mysqli_connect($host, $user, $password, $dbname);
if (!$conn) {
die("Connection failed: " . mysqli_connect_error());
}
?>
```
接着,我们编写一个用于显示所有图书信息的页面:
```
<?php
include 'connect.php';
$sql = "SELECT * FROM books";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
echo "<table><tr><th>ID</th><th>Title</th><th>Author</th><th>Publisher</th><th>ISBN</th><th>Year</th></tr>";
while($row = mysqli_fetch_assoc($result)) {
echo "<tr><td>".$row["id"]."</td><td>".$row["title"]."</td><td>".$row["author"]."</td><td>".$row["publisher"]."</td><td>".$row["isbn"]."</td><td>".$row["year"]."</td></tr>";
}
echo "</table>";
} else {
echo "0 results";
}
mysqli_close($conn);
?>
```
这段代码使用 SELECT 语句从数据库中获取所有图书信息,并将其显示在一个 HTML 表格中。
接下来,我们来编写一个用于添加新图书的页面:
```
<?php
include 'connect.php';
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$title = $_POST["title"];
$author = $_POST["author"];
$publisher = $_POST["publisher"];
$isbn = $_POST["isbn"];
$year = $_POST["year"];
$sql = "INSERT INTO books (title, author, publisher, isbn, year) VALUES ('$title', '$author', '$publisher', '$isbn', '$year')";
if (mysqli_query($conn, $sql)) {
echo "New book added successfully";
} else {
echo "Error: " . $sql . "<br>" . mysqli_error($conn);
}
}
mysqli_close($conn);
?>
```
这段代码首先检查是否有 POST 请求,如果有则从表单中获取图书信息并将其插入到数据库中。
最后,我们来编写一个用于搜索图书的页面:
```
<?php
include 'connect.php';
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$keyword = $_POST["keyword"];
$sql = "SELECT * FROM books WHERE title LIKE '%$keyword%' OR author LIKE '%$keyword%' OR publisher LIKE '%$keyword%' OR isbn LIKE '%$keyword%' OR year LIKE '%$keyword%'";
$result = mysqli_query($conn, $sql);
if (mysqli_num_rows($result) > 0) {
echo "<table><tr><th>ID</th><th>Title</th><th>Author</th><th>Publisher</th><th>ISBN</th><th>Year</th></tr>";
while($row = mysqli_fetch_assoc($result)) {
echo "<tr><td>".$row["id"]."</td><td>".$row["title"]."</td><td>".$row["author"]."</td><td>".$row["publisher"]."</td><td>".$row["isbn"]."</td><td>".$row["year"]."</td></tr>";
}
echo "</table>";
} else {
echo "0 results";
}
}
mysqli_close($conn);
?>
```
这段代码首先检查是否有 POST 请求,如果有则从表单中获取关键字并使用 LIKE 语句进行模糊查询,最后将查询结果显示在一个 HTML 表格中。
以上就是一个简单的图书管理系统的代码框架,你可以根据实际需求进行修改和完善。
阅读全文