如何使用PHP实现一个简单的在线预订系统
引言:
随着互联网的发展,在线预订系统已经成为许多行业的标配。本文将介绍如何使用PHP语言来实现一个简单的在线预订系统,并给出相应的代码示例。
一、系统需求分析
我们的在线预订系统需要具备以下基本功能:
二、数据库设计
在MySQL中创建两个表,一个是用于存储用户信息的user表,另一个是用于存储酒店信息的hotel表。用户信息表的结构如下:
CREATE TABLE user
(user
(
id
int(11) NOT NULL AUTO_INCREMENT,
name
varchar(50) NOT NULL,
email
varchar(50) NOT NULL,
password
varchar(50) NOT NULL,
PRIMARY KEY (id
)
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;
酒店信息表的结构如下:
CREATE TABLE hotel
(
id
int(11) NOT NULL AUTO_INCREMENT,
name
varchar(50) NOT NULL,
address
varchar(100) NOT NULL,
price
decimal(10,2) NOT NULL,
PRIMARY KEY (id
id
int(11) NOT NULL AUTO_INCREMENT,
name
varchar(50) NOT NULL,
email
varchar(50) NOT NULL, password
varchar(50) NOT NULL,
id
)CREATE TABLE hotel
(
id
int(11) NOT NULL AUTO_INCREMENT, name
varchar(50) NOT NULL,
address
varchar(100) NOT NULL, price
decimal(10,2) NOT NULL,
id
)<?php require 'db.php'; if ($_SERVER['REQUEST_METHOD'] == 'POST') { $name = $_POST['name']; $email = $_POST['email']; $password = password_hash($_POST['password'], PASSWORD_DEFAULT); $sql = "INSERT INTO user(name, email, password) VALUES('$name', '$email', '$password')"; mysqli_query($conn, $sql); header('Location: login.php'); exit; } ?> <form action="" method="post"> <input type="text" name="name" placeholder="用户名" required> <input type="email" name="email" placeholder="邮箱" required> <input type="password" name="password" placeholder="密码" required> <button type="submit">注册</button> </form>
<?php require 'db.php'; if ($_SERVER['REQUEST_METHOD'] == 'POST') { $email = $_POST['email']; $password = $_POST['password']; $sql = "SELECT * FROM user WHERE email='$email'"; $result = mysqli_query($conn, $sql); $user = mysqli_fetch_assoc($result); if ($user && password_verify($password, $user['password'])) { session_start(); $_SESSION['user_id'] = $user['id']; header('Location: index.php'); exit; } else { echo '用户名或密码错误'; } } ?> <form action="" method="post"> <input type="email" name="email" placeholder="邮箱" required> <input type="password" name="password" placeholder="密码" required> <button type="submit">登录</button> </form>酒店列表展示和预订功能:🎜代码示例:🎜🎜index.php:🎜
<?php require 'db.php'; $sql = "SELECT * FROM hotel"; $result = mysqli_query($conn, $sql); $hotels = mysqli_fetch_all($result, MYSQLI_ASSOC); ?> <?php foreach($hotels as $hotel): ?> <h3><?php echo $hotel['name']; ?></h3> <p>地址:<?php echo $hotel['address']; ?></p> <p>价格:<?php echo $hotel['price']; ?></p> <a href="booking.php?id=<?php echo $hotel['id']; ?>">预订</a> <?php endforeach; ?> booking.php: <?php session_start(); require 'db.php'; if (!isset($_SESSION['user_id'])) { header('Location: login.php'); exit; } $hotel_id = $_GET['id']; $user_id = $_SESSION['user_id']; $sql = "INSERT INTO booking(user_id, hotel_id) VALUES('$user_id', '$hotel_id')"; mysqli_query($conn, $sql); echo '预订成功'; ?>🎜🎜订单管理功能:省略,可以根据用户ID从booking表中查询订单信息,并进行相应的管理操作。🎜🎜后台管理功能:省略,可以根据管理员账号登录后,实现对酒店和订单信息的管理和统计。🎜🎜🎜结语:🎜🎜本文介绍了如何使用PHP语言来实现一个简单的在线预订系统,并给出了相应的代码示例。读者可以根据自己的需求进行相应的修改和拓展,以实现更加完善的功能。希望本文对你有所帮助!🎜
以上是如何使用PHP实现一个简单的在线预订系统的详细内容。更多信息请关注PHP中文网其他相关文章!