亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 語言 > PHP > 正文

一個比較完善的購物車類

2024-09-04 11:43:59
字體:
來源:轉載
供稿:網友

前不久做到一個項目需要用到購物車,考慮到可能經常用到,所以把它封裝成一個類,以便以后調用,你可以簡單的把這個類稍微修改一下就可以用在自己的程序里了.

  1. <?php 
  2. /*****************************************************************************/ 
  3. /*                                                                           */ 
  4. /* file type:      包含文件,建議后綴為.inc                                  */ 
  5. /*                                                                           */ 
  6. /* file name:      cart.inc                                                  */ 
  7. /*                                                                           */ 
  8. /* Description:    定義一個購車類                                            */ 
  9. /*                                                                           */ 
  10. /* Func list :     class cart                                                */ 
  11. /*                                                                           */ 
  12. /* author :        bigeagle                                                  */ 
  13. /*                                                                           */ 
  14. /* date :          2000/12/24                                                */ 
  15. /*                                                                           */ 
  16. /* History:        2000/12/24  finished                                      */ 
  17. /*                                                                           */ 
  18. /*****************************************************************************/ 
  19.  
  20. //定義本文件常量 
  21. define("_CART_INC_" , "exists") ; 
  22.  
  23. /*購物車類*/ 
  24. class TCart 
  25.  
  26.   var $SortCount;            //商品種類數 
  27.   var $TotalCost;            //商品總價值 
  28.  
  29.   var $Id;                   //每類商品的ID(數組) 
  30.   var $Name;                 //每類商品的名稱(數組) 
  31.   var $Price;                //每類商品的價格(數組) 
  32.   var $Discount;             //商品的折扣(數組) 
  33.   var $GoodPrice ;           //商品的優惠價格(數組) 
  34.   var $Count;                //每類商品的件數(數組) 
  35.   var $MaxCount ;            //商品限量(數組) 
  36.  
  37.   //******構造函數 
  38.   function TCart() 
  39.   { 
  40.    $this->SortCount=0; 
  41.  
  42.    session_start(); //初始化一個session 
  43.    session_register('sId'); 
  44.    session_register('sName'); 
  45.    session_register('sPrice'); 
  46.    session_register('sDiscount'); 
  47.    session_register('sGoodPrice') ; 
  48.    session_register('sCount') ; 
  49.    session_register('sMaxCount') ; 
  50.  
  51.    $this->Update(); 
  52.    $this->Calculate(); 
  53.   } 
  54.  
  55.   //********私有,根據session的值更新類中相應數據 
  56.   function Update() 
  57.   { 
  58.     global $sId,$sName,$sPrice,$sCount,$sDiscount,$sMaxCount,$sGoodPrice
  59.  
  60.    if(!isset($sIdor !isset($sNameor !isset($sPrice
  61.       or !isset($sDiscountor !isset($sMaxCount
  62.       or !isset($sGoodPriceor !isset($sCount)) return
  63.  
  64.    $this->Id        =$sId
  65.    $this->Name      =$sName
  66.    $this->Price     =$sPrice
  67.    $this->Count     =$sCount
  68.    $this->Discount  = $sDiscount ; 
  69.    $this->GoodPrice = $sGoodPrice ; 
  70.    $this->MaxCount  = $sMaxCount ; 
  71.  
  72.    //計算商品總數 
  73.    $this->SortCount=count($sId); 
  74.  
  75.   } 
  76.  
  77.   //********私有,根據新的數據計算每類商品的價值及全部商品的總價 
  78.   function Calculate() 
  79.   { 
  80.    for($i=0;$i<$this->SortCount;$i++) 
  81.    { 
  82.      /*計算每件商品的價值,如果折扣是0 ,則為優惠價格*/ 
  83.      $GiftPrice = ($this->Discount[$i] == 0 ? $this->GoodPrice : 
  84.                    ceil($this->Price[$i] * $this->Discount[$i])/100 ); 
  85.      $this->TotalCost += $GiftPrice * $this->Count[$i] ; 
  86.    } 
  87.   } 
  88.  
  89.  
  90.   //**************以下為接口函數 
  91.  
  92.   //*** 加一件商品 
  93.   // 判斷是否藍中已有,如有,加count,否則加一個新商品 
  94.   //首先都是改session的值,然后再調用update() and calculate()來更新成員變量 
  95.   function Add($a_ID , $a_Name , $a_Price , $a_Discount , 
  96.                $a_GoodPrice , $a_MaxCount , $a_Count
  97.   { 
  98.    global $sId , $sName , $sCount , $sPrice , $sDiscount , 
  99.           $sGoodPrice , $sMaxCount ; 
  100.  
  101.    $k=count($sId); 
  102.    for ($i=0; $i<$k$i++) 
  103.    { //先找一下是否已經加入了這種商品 
  104.      if($sId[$i]==$a_ID
  105.      { 
  106.       $sCount[$i] += $a_Count ; 
  107.       break
  108.      } 
  109.    } 
  110.    if($i >= $k
  111.    { //沒有則加一個新商品種類 
  112.     $sId[]        = $a_ID
  113.     $sName[]      = $a_Name
  114.     $sPrice[]     = $a_Price
  115.     $sCount[]     = $a_Count
  116.     $sGoodPrice[] = $a_GoodPrice ; 
  117.     $sDiscount[]  = $a_Discount ; 
  118.     $sMaxCount[]  = $a_MaxCount ; 
  119.    } 
  120.  
  121.    $this->Update(); //更新一下類的成員數據 
  122.    $this->Calculate(); 
  123.   } 
  124.  
  125.   //移去一件商品 
  126.   function Remove($a_ID
  127.   { 
  128.    global $sId , $sName , $sCount , $sPrice , $sDiscount , 
  129.           $sGoodPrice , $sMaxCount ; 
  130.  
  131.    $k = count($sId); 
  132.    for($i=0; $i < $k$i++) 
  133.    { 
  134.      if($sId[$i] == $a_ID
  135.      { 
  136.        $sCount[$i] = 0 ; 
  137.        break
  138.      } 
  139.    } 
  140.  
  141.    $this->Update(); 
  142.    $this->Calculate(); 
  143.   } 
  144.  
  145.   //改變商品的個數 
  146.   function ModifyCount($a_i,$a_Count
  147.   { 
  148.    global $sCount
  149.  
  150.    $sCount[$a_i] = $a_Count ; 
  151.    $this->Update(); 
  152.    $this->Calculate(); 
  153.   } 
  154.  
  155.  
  156.   /*************************** 
  157.   清空所有的商品 
  158.   *****************************/ 
  159.   function RemoveAll() 
  160.   { 
  161.    session_unregister('sId'); 
  162.    session_unregister('sName'); 
  163.    session_unregister('sPrice'); 
  164.    session_unregister('sDiscount'); 
  165.    session_unregister('sGoodPrice') ; 
  166.    session_unregister('sCount') ; 
  167.    session_unregister('sMaxCount') ; 
  168.    $this->SortCount = 0 ; 
  169.    $this->TotalCost = 0 ; 
  170.   } 
  171.  
  172.  
  173.   //是否某件商品已在藍內,參數為此商品的ID 
  174.   function Exists($a_ID
  175.   { 
  176.    for($i=0; $i<$this->SortCount; $i++) 
  177.    { 
  178.      if($this->Id[$i]==$a_IDreturn TRUE; 
  179.    } 
  180.    return FALSE; 
  181.   } 
  182.  
  183.   //某件商品在藍內的位置 
  184.   function IndexOf($a_ID
  185.   { 
  186.    for($i=0; $i<$this->SortCount; $i++) 
  187.    { 
  188.     if($this->Id[$i]==$idreturn $i
  189.    } 
  190.    return 0; 
  191.   } 
  192.  
  193.   //取一件商品的信息,主要的工作函數 
  194.   //返回一個關聯數組, 
  195.   function Item($i
  196.   { 
  197.    $Result[id]        = $this->Id[$i]; 
  198.    $Result[name]      = $this->Name[$i]; 
  199.    $Result[price]     = $this->Price[$i]; 
  200.    $Result[count]     = $this->Count[$i]; 
  201.    $Result[discount]  = $this->Discount[$i] ; 
  202.    $Result[goodprice] = $this->GoodPrice[$i] ; 
  203.    $Result[maxcount]  = $this->MaxCount[i] ; 
  204.    return $Result
  205.   } 
  206.  
  207.   //取總的商品種類數 
  208.   function CartCount() 
  209.   { 
  210.    return $this->SortCount; 
  211.   } 
  212.  
  213.   //取總的商品價值 
  214.   function GetTotalCost() 
  215.   { 
  216.    return $this->TotalCost; 
  217.   } 
  218. }  
  219. ?> 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
欧美激情一区二区三级高清视频| 在线免费观看羞羞视频一区二区| 日本免费久久高清视频| 久久99精品久久久久久青青91| 日韩精品免费在线视频| 欧美黑人视频一区| 久久精品国产一区二区电影| 97在线免费观看视频| 国产91在线播放九色快色| 日韩精品欧美激情| 日韩欧美在线观看| 91在线视频九色| 亚洲第一精品电影| 亚洲精品视频中文字幕| 国产91精品久久久| 亚洲欧美日韩网| 丝袜情趣国产精品| 日本午夜精品理论片a级appf发布| 精品国产网站地址| 欧美性开放视频| 国产丝袜一区视频在线观看| 色樱桃影院亚洲精品影院| 美日韩丰满少妇在线观看| 久久精品国产99国产精品澳门| 亚洲色图美腿丝袜| 精品视频在线播放色网色视频| 亚洲国产精品va在线| 亚洲精品一区二区三区婷婷月| 国产精品免费久久久久久| 最近2019中文字幕第三页视频| 日韩精品欧美激情| 黑人巨大精品欧美一区二区| 精品国产91久久久久久| 91成人在线观看国产| 136fldh精品导航福利| 日韩视频亚洲视频| 欧洲成人性视频| 91在线观看免费高清完整版在线观看| 欧美另类老肥妇| 亚洲第一中文字幕在线观看| 亚洲第一男人av| 亚洲精品女av网站| 日韩在线一区二区三区免费视频| 国产午夜精品视频免费不卡69堂| 国产精品精品视频一区二区三区| 日韩福利在线播放| 欧美激情免费看| 美女视频黄免费的亚洲男人天堂| 国产高清视频一区三区| 国产精品一区二区三区成人| 精品电影在线观看| 欧美激情精品久久久久久久变态| 国产精品美女网站| 91香蕉嫩草神马影院在线观看| 欧美激情xxxx| 在线日韩日本国产亚洲| 成人黄色午夜影院| 国产精品一区二区久久精品| 懂色aⅴ精品一区二区三区蜜月| 日韩欧美在线播放| 亚洲色图日韩av| 亚洲已满18点击进入在线看片| 国产精品久久久久久超碰| 亚洲乱码国产乱码精品精天堂| 欧美视频专区一二在线观看| 久久在线免费视频| 隔壁老王国产在线精品| 国产偷国产偷亚洲清高网站| 精品视频www| 日韩少妇与小伙激情| 欧美夜福利tv在线| 亚洲国产精品99久久| 欧美日韩国产中文精品字幕自在自线| 亚洲欧洲av一区二区| 国产精品久久久久久久久久东京| 国产日韩视频在线观看| 国产精品va在线播放我和闺蜜| 亚洲成色www8888| 91在线视频成人| 国产成人精品日本亚洲| 久久久免费精品视频| 日韩a**站在线观看| 欧美丝袜美女中出在线| 91精品91久久久久久| 久久久精品日本| 久久精品视频网站| 国产剧情久久久久久| 欧美性猛交99久久久久99按摩| 欧洲中文字幕国产精品| 国产偷国产偷亚洲清高网站| 97久久超碰福利国产精品…| 麻豆乱码国产一区二区三区| 久久精品国产欧美激情| 色偷偷亚洲男人天堂| 日韩av高清不卡| 精品露脸国产偷人在视频| 亚洲人免费视频| 国产精品久久激情| 欧美—级高清免费播放| 九九久久精品一区| 亚洲天堂影视av| 中文字幕久热精品视频在线| 91tv亚洲精品香蕉国产一区7ujn| 亚洲小视频在线观看| 自拍视频国产精品| 国产精品白嫩初高中害羞小美女| 国产精品视频精品视频| 国产福利视频一区| 最新国产成人av网站网址麻豆| 欧美激情国产高清| 亚洲成人精品久久久| 亚洲欧美在线一区二区| 成人国产精品久久久| 欧美成年人视频网站| 国产视频久久久| 久久久精品国产网站| 国产98色在线| 狠狠躁夜夜躁人人爽超碰91| 国产精品丝袜白浆摸在线| 国产精品av免费在线观看| 欧美激情一区二区久久久| 欧美激情在线狂野欧美精品| 日韩成人网免费视频| 91精品视频免费| 亚洲美女动态图120秒| 亚洲高清久久网| 亚洲精品有码在线| 91av在线看| 91夜夜未满十八勿入爽爽影院| 日韩av在线免费观看一区| 久久亚洲综合国产精品99麻豆精品福利| 日韩视频永久免费观看| 啊v视频在线一区二区三区| 精品视频在线观看日韩| 午夜精品一区二区三区在线视频| 日本欧美精品在线| 91精品国产91久久久久久久久| 国产精品青青在线观看爽香蕉| 亚洲精品国产精品国自产在线| 欧美激情在线播放| 欧美在线一级va免费观看| 亚洲电影免费观看高清完整版在线| 国产91精品黑色丝袜高跟鞋| 全球成人中文在线| 在线视频欧美性高潮| 国产亚洲精品久久久优势| 国产午夜精品视频| 亚洲最新av在线| 日韩成人在线视频| 亚洲三级 欧美三级| 欧美高清在线视频观看不卡| 国产亚洲欧美日韩一区二区| 成人福利免费观看| 欧美日韩国产精品一区二区三区四区| 777777777亚洲妇女| 欧美精品电影免费在线观看| 欧美日韩一区二区三区在线免费观看| 国模gogo一区二区大胆私拍| 国产日韩综合一区二区性色av| 国产综合久久久久| 精品丝袜一区二区三区| 国产成人鲁鲁免费视频a| 在线精品视频视频中文字幕| 最近2019中文字幕大全第二页|