--->shop.php
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>ショッピングカート</title>
</head>
<body>
<h1>ショップページ</h1>
<form action="cart.php" method="post">
<dl>
<dt>Tシャツ</dt>
<dd>
3000円
</dd>
<dd>
<input type="hidden" value="0" name="id">
<input type="submit" value="カートに追加">
</dd>
</dl>
</form>
<form action="cart.php" method="post">
<dl>
<dt>靴下</dt>
<dd>
500円
</dd>
<dd>
<input type="hidden" value="1" name="id">
<input type="submit" value="カートに追加">
</dd>
</dl>
</form>
<form action="cart.php" method="post">
<dl>
<dt>帽子</dt>
<dd>
1500円
</dd>
<dd>
<input type="hidden" value="2" name="id">
<input type="submit" value="カートに追加">
</dd>
</dl>
</form>
<p><a href="cart.php">カートの確認</a></p>
</body>
</html>
--->cart.php
<?php
session_start();
$names = ["Tシャツ", "靴下", "帽子"];
$prices = [3000, 500, 1500];
if (!isset($_SESSION["id"]) && isset($_POST["id"])) {
$_SESSION["id"][] = $_POST["id"];
} elseif (isset($_POST["id"])) {
$_SESSION["id"][] = $_POST["id"];
} elseif (isset($_POST["delete"]) && isset($_SESSION["id"])) {
$delete = $_POST["delete"];
unset($_SESSION["id"][$delete]);
$_SESSION["id"] = array_values($_SESSION["id"]);
} elseif (isset($_POST["allDel"])) {
unset($_SESSION["id"]);
}
?>
<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="utf-8">
<title>ショッピングカート</title>
</head>
<body>
<h1>カート一覧</h1>
<?php
if (empty($_SESSION["id"])) {
?>
<h2>商品がありません</h2>
<?php
} else {
// print_r($_SESSION["id"]);
?>
<table>
<tr>
<th>商品名</th>
<th>値段</th>
</tr>
<?php
$num = 0;
foreach($_SESSION["id"] as $key => $value){
?>
<tr>
<td><?php echo $names[$value]; ?></td>
<td><?php echo $prices[$value]; ?>円</td>
<td>
<form action="" method="post">
<input type="hidden" value="<?php echo $key; ?>" name="delete">
<input type="submit" value="削除">
</form>
</td>
</tr>
<?php
$num += $prices[$value];
}
?>
</table>
<p>
<form action="" method="post">
<input type="hidden" value="" name="allDel">
<input type="submit" value="すべて削除">
</form>
</p>
<h2>合計金額:<?php echo $num; ?>円</h2>
<?php
}
?>
<p><a href="shop.php">商品一覧</a></p>
</body>
</html>