以下是一个简单的PHP购物车蛋糕示例:
<?php
session_start();
// 蛋糕列表
$cakes = array(
array("id" => 1, "name" => "巧克力蛋糕", "price" => 20),
array("id" => 2, "name" => "草莓蛋糕", "price" => 18),
array("id" => 3, "name" => "榴莲蛋糕", "price" => 25),
array("id" => 4, "name" => "抹茶蛋糕", "price" => 22)
);
// 初始化购物车
if (!isset($_SESSION['cart'])) {
$_SESSION['cart'] = array();
}
// 添加蛋糕到购物车
if (isset($_POST['add_to_cart'])) {
$cake_id = $_POST['cake_id'];
$quantity = $_POST['quantity'];
// 检查蛋糕是否已经在购物车中
if (isset($_SESSION['cart'][$cake_id])) {
$_SESSION['cart'][$cake_id] += $quantity;
} else {
$_SESSION['cart'][$cake_id] = $quantity;
}
}
// 从购物车中删除蛋糕
if (isset($_GET['remove_from_cart'])) {
$cake_id = $_GET['cake_id'];
if (isset($_SESSION['cart'][$cake_id])) {
unset($_SESSION['cart'][$cake_id]);
}
}
// 清空购物车
if (isset($_GET['clear_cart'])) {
unset($_SESSION['cart']);
}
// 计算购物车总金额
$total_price = 0;
foreach ($_SESSION['cart'] as $cake_id => $quantity) {
foreach ($cakes as $cake) {
if ($cake['id'] == $cake_id) {
$total_price += $cake['price'] * $quantity;
break;
}
}
}
?>
<!DOCTYPE html>
<html>
<head>
<title>购物车</title>
</head>
<body>
<h1>购物车</h1>
<h2>蛋糕列表</h2>
<ul>
<?php foreach ($cakes as $cake): ?>
<li>
<?php echo $cake['name']; ?> - ¥<?php echo $cake['price']; ?>
<form method="post" action="">
<input type="hidden" name="cake_id" value="<?php echo $cake['id']; ?>">
数量: <input type="number" name="quantity" value="1" min="1">
<input type="submit" name="add_to_cart" value="添加到购物车">
</form>
</li>
<?php endforeach; ?>
</ul>
<h2>购物车</h2>
<table>
<tr>
<th>蛋糕</th>
<th>数量</th>
<th>价格</th>
<th>操作</th>
</tr>
<?php foreach ($_SESSION['cart'] as $cake_id => $quantity): ?>
<?php foreach ($cakes as $cake): ?>
<?php if ($cake['id'] == $cake_id): ?>
<tr>
<td><?php echo $cake['name']; ?></td>
<td><?php echo $quantity; ?></td>
<td><?php echo $cake['price'] * $quantity; ?></td>
<td>
<a href="?remove_from_cart=true&cake_id=<?php echo $cake['id']; ?>">删除</a>
</td>
</tr>
<?php endif; ?>
<?php endforeach; ?>
<?php endforeach; ?>
<tr>
<td colspan="2">总金额:</td>
<td><?php echo $total_price; ?></td>
<td><a href="?clear_cart=true">清空购物车</a></td>
</tr>
</table>
</body>
</html>
这个示例中,首先定义了一个蛋糕列表数组,每个蛋糕都有一个唯一的ID、名称和价格。然后,通过$_SESSION['cart']数组来存储购物车中的蛋糕和对应的数量。
在页面中,首先展示了蛋糕列表,每个蛋糕都有一个表单,用户可以选择蛋糕的数量并点击“添加到购物车”按钮将蛋糕添加到购物车中。
然后,展示了购物车中的蛋糕列表,包括蛋糕名称、数量、价格和删除按钮。用户可以点击删除按钮删除购物车中的蛋糕。
最后,展示了购物车的总金额,并提供了一个“清空购物车”链接,用户可以点击清空购物车。
这个示例只是一个简单的购物车实现,可以根据自己的需求进行扩展和改进。
上一篇:php将数组导出csv
下一篇:php选中时间获取年月
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站