2012-01-19 27 views
0

私はシンプルなお店のカートを構築していますし、(ユーザーがカートに追加]ボタンを提出する際に)私は、製品ページから次の配列を取得しています...カートのセッション配列

Array ([product_id] => 1 [weight] => 2 [size] => 4 [type] => cafe [cost] => 6323.86) 

その後、私はそれを保存しています後でカートに示すことにsession ...へ

$_SESSION['cart']= $data; //$_POST values into $data 

それは、ユーザーがカートに1つだけの製品を追加した場合のための素晴らしい作品が、彼は他の製品を追加する場合は$ _SESSION [「カート」]配列は、新しい値に置き換え、しかし、私はそれがすべての選択された製品の詳細を保存したい、どのように私はそれを達成することができますか?

答えて

3

、あなたのカートに別のデータレベルを置く:

この項目は、カートに入れていますことを記録する簡単なタスクを行うだろう
$pid = $data['product_id']; 
$_SESSION['cart'][$pid] = $data; 

。数量の更新やその他のものを扱うための余分なロジックを追加する必要があります。

ただし、「コスト」フィールドがクライアント経由で丸められている場合は、その値を信頼しないでください。誰かが高価なアイテムを大量に追加して価格を0に設定するのは非常に簡単です。ブームはあなたのeコマースシステムを運営します。

+0

私は現在 'foreach($ _ SESSION ['cart'] as $ key => $ value)'を使っているので、配列に '$ pid'を追加した後に、おかげさまで – seoppc

+0

私は電子商取引システムbtwについてのあなたの提案が好きでした。そのために、私の上記の質問で私を助けてください。 – seoppc

+0

そのforeachで、あなたの '$ value'はあなたがカートに入れた' $ data'と同じになるので、 '$ value ['type']'は 'cafe 'になります。 –

関連する問題