aierong [オリジナル]
初めてBToCサイトのショッピングカートを作成する
方法1:セッションを利用する
方法をまとめました。
セッションには任意の種類のデータを保存できます。各ユーザーは、ショッピング カートのセッション データを区別するために使用されます。まず、多くのユーザーがショッピング カートを使用すると、セッションには小さな欠陥があり、ユーザーが COOKIE を閉じると、セッションの使用が多くなります。
もちろんASPでは
面倒です
。NET にセッション データを保存するには、他にも 2 つの方法があります。1 つは、セッション データを保存する別のサーバーを指定する方法です。これにより、WEB サーバーの動作オーバーヘッドを効果的に共有できます。
もう 1 つは、MS SQL にセッション データを格納することです。MS SQL はローカル テンポラリ テーブルに配置され、各ローカル テンポラリ テーブルに一意の ID を割り当てます
。この ID は、異なるユーザーの異なるセッション データを区別するために使用されます。ただし、データベース内で一時テーブルを頻繁に作成および削除すると、データベースに大きなオーバーヘッドが発生するため、この方法はお勧めしません。
方法 2: データベース内のテーブル (ShoppingCart) を使用する
私のお気に入りの実装方法は、
テーブルにいくつかの基本フィールドがあることです。
CartId ショッピング カート ID (一意)
ID 製品ID (一意)
Qtyユーザーが購入した商品の数量
CreateDate ショッピングカートの作成時刻
このテーブルのフィールド CartId は、ユーザーがログインしている場合は、ログインしているユーザーのログイン名の ID をテーブルに格納できます。ユーザーがログインしておらず、ショッピング カートを使用している場合、
ショッピング カート ID として GUID (Globally Unique Identifier) を割り当てることができます。
まず、この方法には大量の無効なデータが発生します。ご存知のとおり、ショッピング カートを使用する人は、最終的にはチェックアウトして商品を購入しない可能性があります。ただし、ショッピング カートを使用するには
、関連するデータをテーブル (ShoppingCart) に挿入する必要があります。ログインしていないユーザーがサイトを離れるとすぐに、テーブル内のデータは無駄なデータの山になります。次回は、
新しい CartId ショッピング カート ID を割り当てます。無駄なデータがある場合は、このテーブルを定期的にメンテナンスする必要があります (CreateDate フィールドと CartId フィールドを使用して決定します)。無効なデータ) を手動で呼び出すこともできます。MS SQL が代わりに実行されると、JOB が自動的に呼び出して無駄なデータを削除します。
プルの欠点について話す場合は、この方法の利点についても説明する必要があります。
1.データベースを 1 台のコンピュータに配置し、WEB サーバーを別のコンピュータに配置することで、システム リソースの消費が少なくなり、システム リソースを最大限に活用できます。
2.ショッピング カート内のデータは効果的に保持されます。顧客がショッピング中に他の理由 (事故など) で突然ショッピング ステーションを離れた場合、ショッピング カート内のデータは次にログインしたときに有効に
保持される
と考えられます。ショッピング カートは、ユーザーが再度商品を購入できないようにするために、前回保存されたデータも保存されます (この機能は、ショッピング カートの
実装にセッションが使用されている場合にのみ有効です)。
、すべてのユーザーがサイトを離れると、ショッピングカート内のすべてのデータが失われます、失敗は
簡単です、ASPに接触したばかりなので、これらをまとめました。 NET さん、私は多くの点についてあまり知りません。ショッピング カートを実装する他の方法があるかもしれません。アドバイスをいただければ幸いです。