1

チェックアウトするまでアイテムごとのアイテム ID と数量をセッションに保存するショッピング カートがあります。

クライアントが支払いを済ませたら、データベースの ORDERS テーブルに情報を挿入します。

私の質問は、複数のアイテムを持つクライアントからの 1 つの注文をどのように処理すればよいですか? 私のORDERSテーブルには「数量」フィールドがあるので、複数の数量は簡単です。しかし、複数のアイテムはどうですか?何が推奨されますか?1 つの同じ注文に対して、アイテムごとに異なる行を挿入する必要がありますか?

現在、私はこれを持っていました:

$query = "INSERT INTO orders (itemId, quantity, clientPrice, firstName, lastName, email, phoneNumber, address, city, zip) 
VALUES (:itemId, :quantity, :clientPrice, :firstName, :lastName, :email, :phoneNumber, :address, :city, :zip)";
4

1 に答える 1

2

私の意見では、少なくともそのようなフィールドを持つ 2 つのテーブルを作成する必要があります。

注文

id | user_id | date

Ordered_items - このテーブルに加えて、製品に関するすべての情報を含むアイテムの完全なテーブルも必要です。Priceアイテムの価格が変更される可能性があり、既に作成された注文の「費やした金額」を変更してはならないという理由だけで、ここで必要になります。

item_id | order_id | quantity | price

したがって、結合を使用して、必要なものすべてを数えることができます。テーブルの結合がすべての作業を行います。

于 2013-04-11T15:02:59.973 に答える