人人做人人澡人人爽欧美,国产主播一区二区,久久久精品五月天,羞羞视频在线观看免费

當前位置:蘿卜系統下載站 > 技術開發教程 > 詳細頁面

用ASP設計購物推車

用ASP設計購物推車

更新時間:2022-08-20 文章作者:未知 信息來源:網絡 閱讀次數:

什么是購物推車?
  你一定去過超級市場吧。在那里你可以推著推車,將中意的商品放進推車,或者把推車里的商品取出來重新放到貨架,最后你推著推車去結賬。
  那么,在網上超市,客戶也應該可以在瀏覽商品目錄時,將中意的商品放進"電子推車"。電子推車是超級市場推車的電子化。在網上商店里,這種電子推車又稱為"購物推車",英文是Shopping Cart。
購物推車的設計目標
  從程序員的觀點來看,購物推車是維護購物者商品選購、允許察看、允許修改的一個對象。購物推車本身是一個非常簡單的程序,但開發者要考慮它將連接到商品目錄子系統、訂單子系統、客戶賬號子系統、站點管理子系統等等,形成功能完整的網上商店。

下面是購物推車的設計目標:
1、 持續性:購物推車應該從它的前一次會話中記住其內容。
2、 購物推車和客戶相關,而不是和客戶的電腦相關?蛻艨梢詮牧硗獾碾娔X或瀏覽器來訪問購物推車。
3、 當新的商品被加入推車或者從推車去掉時,推車的內容可以被顯示給用戶。
4、 推車可以容納很多甚至無限的商品。
系統設計/流程設計
  在編寫我們的購物推車之前,我們看看它的系統架構和流程。請看下圖:

  如果客戶從商品目錄中選擇了一件商品,這時我們傳遞客戶的請求到proxy.asp,同時傳遞的是動作變量"增加商品"。Proxy.asp讀取這個變量,并決定執行購物推車的哪個動作。這些動作包括:增加商品、更新商品數量、移除商品或者察看購物推車。
  有些動作被作為內部調用。如創建推車之前,我們需要檢查推車是否已經存在(CheckCart)。在增加、刪除或者更新商品及其數量時,我們要確認此商品是否已經存在于我們的購物推車之中(CheckItem)。下面我們將為購物推車設計8個方法,分別是:
ViewItem 察看推車
CheckCart 檢查推車
CreateCart 創建推車
AddItem(ID, Qty), 增加商品
RemoveItem(ID) 刪除商品
UpdateItem(ID, Qty), 更新數量
RemoveAll 全部清空
CheckItem(ID) 商品檢查

購物推車的設計
  購物推車需要三個要素:一個VBScript 5的類class CartKit,一個多維數組mudCart,一個session變量Session("Cart")。
  這個VBScript 類,我們稱為CartKit,包含了8個方法,如上表所示。在本文我們只用了ID和Qty,分別表示商品編號和數量。
  這樣我們就可以用一個二維數組來表達這個推車,象下面這樣:
商品編號 商品數量
ID-1 23
ID-3 10
ID-23 6
ID-2 1
然后我們把這個二維數組保存到session變量中就可以了。
購物推車類CartKit的設計
請下載:CartKit.asp
CreateCart設計:
請看程序代碼:
Class CartKit REM 開始類CartKit的定義
Sub CreateCart()
 IF IsArray(Session("Cart")) = false THEN
  Dim mudCart(19,1)
  Session("Cart") = mudCart
 END IF
End Sub
其中:Session("Cart")保存的就是推車的內容。如果推車不存在,我們就定義一個二維數組mudCart來表達推車,并將它保存到session("Cart")中。
CheckCart設計:
本函數判斷Cart是否已經創建。比較簡單。
Function CheckCart()
IF IsArray(Session("Cart")) THEN
  CheckCart=True
 ELSE
  CheckCart=False
 END IF
End Function
CheckItem設計:
請看代碼:
Function CheckItem(ID)
IF CheckCart=True THEN
  varMudCart = Session("Cart")
  FOR i = LBound(varMudCart)TO UBound(varMudCart)
 IF varMudCart(i,0) = ID THEN
  CheckItem=TRUE
 Exit Function
 ELSEIF varMudCart(i,0) <> ID THEN
  CheckItem=FALSE
 END IF
  NEXT
 END IF
End Function
首先判斷推車是否存在。然后將商品的編號ID和購物推車中的商品編號逐一比較。如果有相等的,返回真。否則為假。
AddItem(ID,Qty)設計:
請參考本文的附件CartKit.asp,這里介紹的函數我們把它們封裝到一個名為CartKit的class中。下面的代碼段首先創建了一個CartKit對象,然后檢查推車是否已經存在。如果不存在,就創建推車并新增商品;否則,檢查商品編號是否已經存在于Cart中。如果是,就更新數量;否則,新增商品。

Function AddItem(ID, Qty)
Set CartObj = New CartKit
varCartStatus = CartObj.CheckCart
 IF varCartStatus=false THEN
  CartObj.CreateCart
  mudCart=Session("Cart")
  mudCart(0,0)=ID
  mudCart(0,1)=Qty
  Session("Cart")=mudCart
   Exit Function
 ELSEIF varCartStatus=true THEN
 IF CartObj.CheckItem(ID) = true THEN
  CartObj.UpdateItem ID,Qty
 ELSEIF cartObj.CheckItem(ID) = false THEN
  mudCart = Session("Cart")
 FOR i = LBound(mudCart) TO UBound(mudCart)
 IF mudCart(i,0) = "" THEN
  mudCart(i,0) = ID
  mudCart(i,1) = Qty
  Session("Cart") = mudCart
 Exit Function
 END IF
 NEXT
 END IF
 END IF
End Function
UpdateItem設計:
Function UpdateItem(ID, Qty)
mudCart = Session("Cart")

 FOR i = LBound(mudCart) TO UBound(mudCart)
  IF mudCart(i,0) = ID THEN
   mudCart(i,1) = Qty
   Session("cart")=mudCart
   Exit Function
  END IF
 NEXT
End Function
ViewItem設計:
Function ViewItem()
mudCart=Session("Cart")
IF isArray(mudCart) THEN
%>


溫馨提示:喜歡本站的話,請收藏一下本站!

本類教程下載

系統下載排行

網站地圖xml | 網站地圖html
主站蜘蛛池模板: 楚雄市| 顺昌县| 礼泉县| 临潭县| 剑川县| 马边| 若羌县| 天气| 民丰县| 库尔勒市| 延安市| 曲阜市| 扎鲁特旗| 大邑县| 牡丹江市| 和顺县| 太和县| 太仆寺旗| 南京市| 怀仁县| 巴林左旗| 石城县| 高州市| 南丹县| 尼玛县| 桑日县| 濮阳县| 莲花县| 舒城县| 汾阳市| 平定县| 大埔区| 即墨市| 曲周县| 合江县| 湘潭县| 江都市| 和林格尔县| 平谷区| 嘉兴市| 肃北|