この記事では、PHPを使ってシンプルなショッピングカートを作成する方法を紹介します。
ショッピングカートは、オンラインショップで商品を選んで購入する際に使うものです。ユーザーが選んだ商品を一時的に保存し、後でまとめて購入できるようにします。PHPを使ってこのカートを実装することで、動的なWebサイトを作ることができます。
まずは、PHPが動作する環境を準備しましょう。ローカル環境で開発するには、以下のものが必要です。
PHPをインストールするためには、XAMPPやMAMPなどのパッケージを使うと簡単です。これをインストールすると、ApacheサーバーとMySQLも一緒にインストールされるので便利です。
コードを書くためには、エディタが必要です。Visual Studio CodeやSublime Textなど、自分に合ったエディタを選びましょう。
それでは、実際にショッピングカートを作成していきましょう。まずは、基本的なファイル構成を作ります。
まずは、商品を表示する index.php
を作成します。以下のコードを参考にしてください。
<?php
session_start();
$products = [
1 => ['name' => '商品A', 'price' => 1000],
2 => ['name' => '商品B', 'price' => 1500],
];
if ($_SERVER['REQUEST_METHOD'] === 'POST') {
$product_id = $_POST['product_id'];
$_SESSION['cart'][$product_id] = ($_SESSION['cart'][$product_id] ?? 0) + 1;
}
?>
<!DOCTYPE html>
<html>
<head>
<title>商品一覧</title>
</head>
<body>
<h1>商品一覧</h1>
<ul>
<?php foreach ($products as $id => $product): ?>
<li><?= $product['name'] ?> - <?= $product['price'] ?>円
<form method="post">
<input type="hidden" name="product_id" value="<?= $id ?>">
<input type="submit" value="カートに追加">
</form>
</li>
<?php endforeach; ?>
</ul>
</body>
</html>
次に、カートの内容を表示する cart.php
を作成します。以下のコードを参考にしましょう。
<?php
session_start();
$products = [
1 => ['name' => '商品A', 'price' => 1000],
2 => ['name' => '商品B', 'price' => 1500],
];
$total = 0;
?>
<!DOCTYPE html>
<html>
<head>
<title>カートの中身</title>
</head>
<body>
<h1>カートの中身</h1>
<ul>
<?php if (!empty($_SESSION['cart'])): ?>
<?php foreach ($_SESSION['cart'] as $id => $quantity): ?>
<li><?= $products[$id]['name'] ?> - <?= $quantity ?>個
=> <?= $products[$id]['price'] * $quantity ?>円
</li>
<?php $total += $products[$id]['price'] * $quantity; ?>
<?php endforeach; ?>
<?php else: ?>
<li>カートは空です</li>
<?php endif; ?>
</ul>
<p>合計:<?= $total ?>円</p>
<a href="index.php">商品一覧に戻る</a>
</body>
</html>
今回は、PHPを使って簡単なショッピングカートを作成する方法を学びました。基本的な構造ができれば、さらに機能を追加して自分だけのオリジナルなショッピングサイトを作ることができます。