ショッピングカートとは何ですか?
あなたはスーパーマーケットに行ったことがあるに違いありません。そこで、カートを押したり、お気に入りの商品をカートに入れたり、カートから商品を取り出して棚に戻すことができます。最後に、カートを押してチェックアウトします。
その後、オンラインのスーパーマーケットでは、製品カタログを閲覧するときに、お気に入りの製品を「電子カート」に入れることができるはずです。電子カートは、スーパーマーケットカートの電子化です。オンラインストアでは、このタイプの電子カートは「ショッピングカート」とも呼ばれ、英語のショッピングカートです。
ショッピングカートのデザイン目標
プログラマーの観点から見ると、ショッピングカートは、買い物客の製品選択、検査、修正を維持するオブジェクトです。ショッピングカート自体は非常にシンプルなプログラムですが、開発者は製品カタログサブシステム、注文サブシステム、顧客アカウントサブシステム、サイト管理サブシステムなどに接続するために、完全に機能するオンラインストアを形成するためにそれを考慮する必要があります。
ショッピングカートのデザイン目標は次のとおりです。
1。継続性:ショッピングカートは、前のセッションからコンテンツを覚えておく必要があります。
2。ショッピングカートは、顧客のコンピューターではなく、顧客に関連しています。顧客は、別のコンピューターまたはブラウザからショッピングカートにアクセスできます。
3.新しい製品がカートに追加または削除されると、カートの内容をユーザーに表示できます。
4.カートは、多くの、または無制限の製品を収容できます。
システム設計/プロセス設計
ショッピングカートを書く前に、システムアーキテクチャとプロセスをご覧ください。
顧客が製品ディレクトリからアイテムを選択した場合、お客様のリクエストをproxy.aspに渡し、同時にアクション変数「追加製品の追加」に渡します。 proxy.aspはこの変数を読み取り、ショッピングカートを実行するアクションを決定します。これらのアクションには、製品の増加、製品の量の更新、製品の削除、ショッピングカートの表示が含まれます。
一部のアクションは内部的に呼ばれます。カートを作成する場合、カートが既に存在するかどうかを確認する必要があります(CheckCart)。製品とその数量を追加、削除、または更新する場合、この製品がショッピングカート(CheckItem)に既に存在するかどうかを確認する必要があります。以下に、ショッピングカート用の8つの方法を設計します。
viewitemビューカート
CheckCart CheckCart
CreateCartカートを作成します
additem(id、qty)、製品を追加します
removeItem(id)アイテムを削除します
updateItem(id、quty)、update number
removeall clear
CheckItem(ID)製品CheckItem
ショッピングカートデザイン
ショッピングカートには、VBScript 5クラスのカートキット、多次元配列ムードカート、セッション変数セッション(「カート」)の3つの要素が必要です。
上記の表に示すように、Cartkitと呼ばれるこのVBScriptクラスには、8つの方法が含まれています。この記事では、それぞれ製品数と数量を表すIDと数量のみを使用します。
このようにして、2次元配列を使用して、このようなカートを表現できます。
製品番号製品量
ID-1 23
ID-3 10
ID-23 6
ID-2 1
次に、この2次元配列をセッション変数に保存します。
ショッピングカートのデザイン
ダウンロードしてください:cartkit.asp
CreateCartデザイン:
プログラムコードをご覧ください:
クラスcartkit remは、クラスcartkitの定義を開始します
sub createcart()
isArray(session( "cart"))= falseの場合
Dim Mudcart(19,1)
セッション( "cart")= Mudcart
ifを終了します
End Sub
その中には、セッション(「カート」)はカートのコンテンツを保存します。カートが存在しない場合は、2次元のアレイムードカートを定義して、カートを表現し、セッション(「カート」)に保存します。
CheckCartデザイン:
この関数は、カートが作成されたかどうかを決定します。比較的簡単です。
関数checkcart()
ISARRAY(セッション( "カート"))の場合
checkcart = true
それ以外
checkcart = false
ifを終了します
エンド関数
CheckItemの設計:
コードをご覧ください:
関数checkitem(id)
checkcart = trueの場合
varmudcart = session( "cart")
i = lbound(varmudcart)からubund(varmudcart)の場合
varmudcart(i、0)= id thenの場合
CheckItem = true
出口機能
Elseif varmudcart(i、0)id then
CheckItem = false
ifを終了します
次
ifを終了します
エンド関数
まず、カートが存在するかどうかを判断します。次に、製品の番号IDをショッピングカートの製品番号と1つずつ比較します。平等がある場合は、trueを返します。それ以外の場合は偽です。
additem(id、qty)デザイン:
この記事cartkit.aspの添付ファイルを参照してください。ここで導入された関数をCartkitと呼ばれるクラスにカプセル化します。次のコードスニペットは、最初にCartKitオブジェクトを作成し、次にカートが既に存在するかどうかを確認します。存在しない場合は、カートを作成して新しいアイテムを追加します。それ以外の場合は、アイテム番号がすでにカートに存在するかどうかを確認してください。その場合、数量は更新されます。それ以外の場合は、新製品が追加されます。
関数additem(id、qty)
cartobj = new cartkitを設定します
varcartstatus = cartobj.checkcart
varcartStatus = falseの場合
cartobj.createcart
Mudcart = session( "cart")
Mudcart(0,0)= id
Mudcart(0,1)=数量
セッション( "cart")= Mudcart
出口機能
Elseif varcartstatus = true
cartobj.checkitem(id)= trueの場合
CARTOBJ.UPDATEITEM ID、数量
Elseif cartobj.Checkitem(id)= false
Mudcart = session( "cart")
i = lbound(mudcart)からubund(mudcart)の場合
mudcart(i、0)= "" thenの場合
Mudcart(i、0)= id
Mudcart(i、1)=数量
セッション( "cart")= Mudcart
出口機能
ifを終了します
次
ifを終了します
ifを終了します
エンド関数
更新設計:
関数updateItem(id、qty)
Mudcart = session( "cart")
i = lbound(mudcart)からubund(mudcart)の場合
Mudcart(i、0)= id thenの場合
Mudcart(i、1)=数量
セッション( "cart")= Mudcart
出口機能
ifを終了します
次
エンド関数
ViewItem Design:
functionviewitem()
Mudcart = session( "cart")
ISARRAY(MudCart)の場合
%>