2012-02-19 9 views
1

ISSET、GET、およびSESSIONSと非常に混同され、シンプルな買い物カゴを作成しようとしています。私はカートのセッションを開始し、そのアイテムをバスケットに追加したいので、私のアイテムのそれぞれの下に「バスケットに追加」というリンクがありますので、アイテム量の変数が1に増え、価格は選択した項目の値から始めます。私はアイテムの選択時にこれらの値を更新したいページの上部にミニショッピングカートを持っています。セッション変数を使用してPHPでシンプルなショッピングバスケットを作成する

私は自分のコードを混乱させるようにして、もう一度やり直しました。私はいくつかのアドバイスを期待していたのですが、カートとセッションを1週間読んでいます。私は範囲、カテゴリ、価格などの製品や情報を含むデータベースを持っています。私はまた、バスケットをクリアし、より詳細を提供するためにウェブページでバスケットを開くミニバスケットのリンクを持っています。

+1

私はそれはあなたが求めているものではありません知っているが、私は」 「CodeIgniter」(http://codeigniter.com)のようなフレームワークを利用している人たちが、車輪を再発明し、事態を非常に危険にさらし、後で更新するための悪夢となるのではなく、大きな成功を収めました。 [CodeIgniter](http://codeigniter.com)をご覧ください。データベースハンドラが組み込まれており、[ショッピングカート](http://codeigniter.com/user_guide/libraries/cart)を使用することができます。 html) 'の機能性、そしてとりわけ素晴らしいドキュメンテーション(http://codeigniter.com/user_guide/) – Jakub

+0

あなたのご意見ありがとうございます。私はしかし、勉強し、最初からショッピングカートを構築する方法を理解する必要があります。ありがとう。 – deucalion0

+0

問題は、単純なカートから複雑なカートに至るまで、多くの方法があなたの状況に応じて正しいことがあります。それを行う正しい方法はありませんが、フレームワークルートに進むと、プロセスの深い理解が得られます。 – Jakub

答えて

1

あなたはPOSTを使用する必要があり、あなたは$ _POST [「アイテム」]変数内アイテムID持っていると仮定し
を取得できません:

session_start(); 
if (isset($_POST['item'])) { 
    $_SESSION['cart'][] = $_POST['item']; 
    header("Location: ".$_SERVER['REQUEST_URI']); 
    exit; 
} 
+0

POSTはGETを使用するよりも安全です、あなたの助言のおかげで! – deucalion0

関連する問題