帝国CMS二次开发调用购物车商品数量和总价
- <?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/'>结算>></a> </div>";
- }
- ?>