如何使用session 写的购物篮程序
SortCount=0;
session_start(); //³õʼ»¯Ò»¸ösession
session_register('sId');
session_register('sName');
session_register('sPrice');
session_register('sDiscount');
session_register('sGoodPrice') ;
session_register('sCount') ;
session_register('sMaxCount') ;
$this->Update();
$this->Calculate();
}
//********˽ÓУ¬¸ù¾ÝsessionµÄÖµ¸üÐÂÀàÖÐÏàÓ¦Êý¾Ý
function Update()
{
global $sId,$sName,$sPrice,$sCount,$sDiscount,$sMaxCount,$sGoodPrice;
if(!isset($sId) or !isset($sName) or !isset($sPrice)
or !isset($sDiscount) or !isset($sMaxCount)
or !isset($sGoodPrice) or !isset($sCount)) return;
$this->Id =$sId;
$this->Name =$sName;
$this->Price =$sPrice;
$this->Count =$sCount;
$this->Discount = $sDiscount ;
$this->GoodPrice = $sGoodPrice ;
$this->MaxCount = $sMaxCount ;
//¼ÆËãÉÌÆ·×ÜÊý
$this->SortCount=count($sId);
}
//********˽ÓУ¬¸ù¾ÝеÄÊý¾Ý¼ÆËãÿÀàÉÌÆ·µÄ¼ÛÖµ¼°È«²¿ÉÌÆ·µÄ×ܼÛ
function Calculate()
{
for($i=0;$i<$this->SortCount;$i++)
{
/*¼ÆËãÿ¼þÉÌÆ·µÄ¼ÛÖµ£¬Èç¹ûÕÛ¿ÛÊÇ0 £¬ÔòΪÓŻݼ۸ñ*/
$GiftPrice = ($this->Discount[$i] == 0 ? $this->GoodPrice :
ceil($this->Price[$i] * $this->Discount[$i])/100 );
$this->TotalCost += $GiftPrice * $this->Count[$i] ;
}
}
//********˽ÓУ¬É¾³ýÉÌÆ·µÄÊý×é
function delmember($p_array, $id)
{
$size = count($p_array);
for($i = 0; $i < $size - $id - 1; $i ++)
{
$p_array[$id + $i] = $p_array[$id + $i + 1];
}
unset($p_array[$size - 1]);
}
//**************ÒÔÏÂΪ½Ó¿Úº¯Êý
//*** ¼ÓÒ»¼þÉÌÆ·
// ÅжÏÊÇ·ñÀ¶ÖÐÒÑÓУ¬ÈçÓУ¬¼Ócount£¬·ñÔò¼ÓÒ»¸öÐÂÉÌÆ·
//Ê×Ïȶ¼ÊǸÄsessionµÄÖµ£¬È»ºóÔÙµ÷ÓÃupdate() and calculate()À´¸üгÉÔ±±äÁ¿
function Add($a_ID , $a_Name , $a_Price , $a_Discount ,
$a_GoodPrice , $a_MaxCount , $a_Count)
{
global $sId , $sName , $sCount , $sPrice , $sDiscount ,
$sGoodPrice , $sMaxCount ;
$k=count($sId);
for ($i=0; $i<$k; $i++)
{ //ÏÈÕÒÒ»ÏÂÊÇ·ñÒѾ¼ÓÈëÁËÕâÖÖÉÌÆ·
if($sId[$i]==$a_ID)
{
$sCount[$i] += $a_Count ;
break;
}
}
if($i >= $k)
{ //ûÓÐÔò¼ÓÒ»¸öÐÂÉÌÆ·ÖÖÀà
$sId[] = $a_ID;
$sName[] = $a_Name;
$sPrice[] = $a_Price;
$sCount[] = $a_Count;
$sGoodPrice[] = $a_GoodPrice ;
$sDiscount[] = $a_Discount ;
$sMaxCount[] = $a_MaxCount ;
}
$this->Update(); //¸üÐÂÒ»ÏÂÀàµÄ³ÉÔ±Êý¾Ý
$this->Calculate();
}
\---------------------------------------------------------------
http://www.phpbuilder.com/columns/evert20000816.php3
这里有一篇文章专门讲这个,不过是英文的.
在
```
附录里,有该文的翻译版.
```Published At