当前位置:首页 > 文章 > 帝国CMS > 正文内容

帝国CMS怎么调用购物车商品数量

3年前 (2022-10-21)帝国CMS7446

帝国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/'>结算&gt;&gt;</a> </div>";
}
?>

扫描二维码推送至手机访问。

版权声明:本文由蓝博发布,如需转载请注明出处。

本文链接:https://blueboss.cn/p/229.shtml

“帝国CMS怎么调用购物车商品数量” 的相关文章

帝国cms模板内容页灵动标签调用当前栏目文章排除当前文章

帝国cms模板内容页灵动标签调用当前栏目文章排除当前文章

解决方法:调用当前栏目信息,栏目ID用:'selfinfo',排除当前信息标签附加sql条件参数用:"id<>'$navinfor[id]'" 举例: [e:loop={'selfinfo',10,0,0,"id<>'$navinfor[id]'"}] <a href...

帝国CMS列表页判断文章来源带链接

帝国CMS列表页判断文章来源带链接

帝国CMS列表页内容怎么判断显示文章来源呢?并且来源带链接? 在列表内容模板里面写如下代码即可: $userr=$empire->fetch1("select befrom from {$dbtbpre}ecms_news_data_{$r[stb]} where id='$r[id]'")...

帝国CMS内容页面中Description里面调用简介信息

帝国CMS内容页面中Description里面调用简介信息

新闻页面的description介绍调用的和标题一样,那是因为帝国cms模板网制作模板的时候默认是description使用的是帝国CMS系统默认的标签[!--pagedes--]。 如果大家要改成调用文章简介的话也很简单,大家按照下面的标签方法去调用即可实现: 后台>模板>内容模板&g...

帝国CMS调用读取当天发布信息

帝国CMS调用读取当天发布信息

在帝国cms模板中,某些位置要调用当天发布的信息数量,但是不知道怎么调用实现,下面就来告诉大家怎么调用: 调用代码: <?php   $timedays=strtotime(date("Y-m-d",time()));//今天0点的时间点   $timedaye=$timedays+3600...

帝国CMS中#091;!--no.num--]标签的用法分析

帝国CMS中#091;!--no.num--]标签的用法分析

帝国CMS [!--no.num--] 标签用法: 帝国CMS[!--no.num--] 指定从某一数字开始显示 代码如下: <?=$bqno+5?> 帝国CMS[!--no.num--] 输出效果为 1 2 3 4 5 6 7 8...样式 代码如下: <?=$bqno?&g...

帝国CMS灵动标签从第二条信息开始

帝国CMS灵动标签从第二条信息开始

正常调用文章信息,是从第一条信息开始调用的,或者是逐条调用,那么,假如我们需要从第二条信息开始调用  [e:loop={栏目ID/专题ID,显示条数,操作类型,只显示有标题图片,附加SQL条件,显示排序}] [e:loop={栏目ID/专题ID,'1,2',操作类型,只显示有标题图片,附加SQL条件...