外卖订餐系统数据库网页PHP代码
时间: 2024-11-25 21:04:19 浏览: 8
外卖订餐系统的数据库通常会包含用户信息、餐厅信息、菜单项、订单详情等数据表。PHP作为服务器端脚本语言,在这种场景下会被用来处理与数据库的交互,实现用户的前端请求(如页面展示、搜索功能、下单操作等)。以下是简化的概述:
1. **数据库设计**:创建MySQL或其他关系型数据库,包含如`users`(用户信息)、`restaurants`(餐厅信息)、`menus`(菜品信息)和`orders`(订单记录)等表格。
2. **连接数据库**:使用PHP的mysqli或PDO扩展建立到数据库的连接。
```php
$servername = "localhost";
$username = "username";
$password = "password";
$dbname = "delivery_system";
$conn = new mysqli($servername, $username, $password, $dbname);
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
```
3. **查询数据**:编写SQL查询从数据库获取所需的数据,例如显示餐厅列表、商品信息或处理用户提交的订单。
```php
// 查询所有餐厅
$sql = "SELECT * FROM restaurants";
$result = $conn->query($sql);
while ($row = $result->fetch_assoc()) {
// 输出餐厅信息
}
// 插入新订单
$order_data = [
'user_id' => $_POST['user_id'],
'restaurant_id' => $_POST['restaurant_id'],
'menu_item' => $_POST['menu_item']
];
$sql = "INSERT INTO orders (user_id, restaurant_id, menu_item) VALUES (?, ?, ?)";
$stmt = $conn->prepare($sql);
$stmt->bind_param("iii", $order_data['user_id'], $order_data['restaurant_id'], $order_data['menu_item']);
$stmt->execute();
```
4. **响应用户**:将数据显示在HTML模板中,并通过HTTP POST或GET请求更新数据库内容。
```html
<!-- 页面显示部分 -->
<form action="place_order.php" method="post">
<input type="hidden" name="restaurant_id" value="<?php echo $restaurant_id; ?>">
<!-- 添加菜品选择等 -->
<button type="submit">下单</button>
</form>
<?php if (isset($_SESSION['success'])) { ?>
<p>您的订单已成功提交!</p>
<?php } ?>
```
阅读全文