2012-02-18 8 views
1

PHPを使用するショップスクリプトを使用してショッピングカートスクリプトを開発/統合しています。ショッピング機能に関してはすべてがうまくいっていますが、今はクッキーやセッションに関する機能をさらに拡張しようとしています。特定のショッピングカート機能をPHPサイトに追加する

基本的に私のサイトにログイン登録ページが作成されています。マテリアル/コンテンツにアクセスでき、ショッピングサイトに行くためのリンクが含まれています。ここから、ログインしたユーザーがカートにアイテムを追加してからログアウトし、いつでもログインしてカートに追加したアイテムを引き続き表示できるようにします。

セッションやCookieを使用してこの問題を回避する方法がわかりません。どんな入力/アイデアも参考になります。

+0

セッションやクッキーの問題は、ブラウザでクッキーや時間をかけて簡単に失われる可能性があることです。私はデータベースにその情報を保存するために行くだろう。 – jribeiro

+0

非常に本当に、その洞察力のおかげで、データベースに保存することについて、私はセッションのユーザーに基づいて検索し、セッションのユーザーがカートに追加したものが取り出され、毎回表示されると仮定します。 – c0rdii

答えて

1

このシナリオでは、ショッピングカートをデータベースに保存することが理想的です。

+0

スクリプトは注文されたカートをデータベースに保存することができますが、初心者のPHPユーザーはログインした各ユーザーのショッピングカート(チェックアウト/注文されていない)を保存する方法がわかりません。 – c0rdii

0

私は何をしますか。

  1. CREATE TABLE: user_cart

    のuser_id | product_id |数量

これはdb(主キーなし)の弱いエンティティです。しかし、あなたはidや何かと呼ばれる余分な列を作り、それを主キーにすることができます...それはあなたの呼び出しです。

  1. ユーザーログイン時にuser_idが必要です。あなたが入力した電子メールを選択して取得しない場合。 SESSION [ 'カート']またはループを通して何かでのproduct_id、数量user_cartからのuser_id = $ your_user_id

  2. 入れクエリ結果

    選択:その後のようなクエリを作ります。 ($ row = mysql_fetch_object($ query)))

  3. カートを印刷するときに何かがあるかどうかを確認してください。そうなら製品をループして印刷してください。 (機能emptyは良い習慣です)

注:あなたは、ユーザーがログインできることを言ったので、私はあなたが(にsession_startをしたと仮定)、それは大丈夫です。 注2:上記の私の質問には製品名や価格などが載っていません。あなたの製品テーブルに参加し、必要な製品情報を入手するようにクエリを修正する必要があります。

もっと助けが必要な場合は教えてください。

ありがとうございました

関連する問題