精彩推荐

帝国CMS模板调用购物车商品数量和总价

703人阅读  0人回复   查看全部 | 阅读模式 | 复制链接   

2

主题

2

帖子

10

积分

新手上路

Rank: 1

积分
10
发表于 2015-3-28 21:50:51
<?php

/**
* 根据Cookie值对购物车商品数量和总价格调用
*/
require("class/connect.php");

$totalProducts = 0;    //购物车商品总数
$totalPrice = 0.0;        //购物车商品总价

//  |77,243|2!|77,237|3!
$cookieString = explode("!",$_COOKIE['zeuqcmybuycar']);

try{
      //遍历商品
     for($i = 0; $i < count($cookieString)-1; $i++){
         $priceAndNumber = explode("|",$cookieString[$i]);
         $thisNum = $priceAndNumber[2];            //当前商品的数量
         $thisId = explode(",",$priceAndNumber[1]);
         $thisId = $thisId[1];                    //当前商品的ID
         $thisPrice = this_price($thisId);        //当前商品价格
         
         $totalPrice += $thisPrice * $thisNum;    //购物车商品总价累加
         $totalProducts += $thisNum;                //购物车商品总数累加
     }
     
     echo "document.write("".displayResultJs($totalPrice,$totalProducts)."")";    //显示结果Js形式输出
     
}catch (Exception $e){
     echo $e->getMessage();
}


/**计算商品价格*/
function this_price($id){
     $connect = connectDB();
     $query = "select price from phome_ecms_news where id = ".$id;
     if(!$connect){
        throw new Exception("数据库链接不成功,请检查!");
     }
     if(!$result = $connect -> query($query)){
         throw new Exception("查询失败!");
     }
     $row = $result -> fetch_assoc();
     
     return $row['price'];
}

/**链接数据库*/
function connectDB(){
     global $phome_db_server,$phome_db_username,$phome_db_password,$phome_db_dbname,$phome_db_char;
     $connect = new mysqli($phome_db_server,$phome_db_username,$phome_db_password,$phome_db_dbname);
     $connect -> query("set Names ".$phome_db_char);
     return $connect;
}

/**显示结果Js*/
function displayResultJs($totalPrice,$totalProducts){
     return "<div class='car'>您的购物车中有 {$totalProducts} 件商品,总计金额 ¥{$totalPrice}元。<br />点击查看   <a href='/e/ShopSys/buycar/'>结算&gt;&gt;</a> </div>";
}
?>


回复

使用道具 举报

快速回复 返回顶部 返回列表