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

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

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

帝国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://www.blueboss.cn/p/229.shtml

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

window服务器iis的帝国cms站点上传大文件出现500问题

window服务器iis的帝国cms站点上传大文件出现500问题

帝国制作的网站,windows系统服务器iis环境,上传大文件出现500错误怎么办?windows系统服务器中,上传大文件提示500怎么办? linux下改到iis+php后,上传大于2M就出500错,改了php.ini中的upload_max_filesize也不行,最后解决如下: 第一步:修改p...

帝国cms内容页显示标题加粗颜色等属性

帝国cms内容页显示标题加粗颜色等属性

每条信息的标题设置了不同的颜色,这些在列表页自动能显示出来了。 但是,在内容页用[!--title--]只能显示出标题文字,用什么代码能让内容页也能显示出设置好的标题的颜色? 在内容页模板找到[!--title--]替换为 <?=DoTitleFont($navinfor[titlefont...

帝国CMS灵动标签调用当前栏目下子栏目列表

帝国CMS灵动标签调用当前栏目下子栏目列表

灵动标签调用当前栏目下子栏目,支持栏目自定义排序。下面帝国cms模板网就来告诉大家: [e:loop={"select classname,classpath,classid from phome_enewsclass where bclassid='$GLOBALS[navclassid]' a...

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

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

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

帝国CMS灵动标签调用指定时间段的信息

帝国CMS灵动标签调用指定时间段的信息

帝国CMS灵动标签怎么调用指定时间段的信息呢? 1、某天发布的文章: [e:loop={'news',10,18,0,'newstime>='.to_time('2010-11-11 00:00:01').' and newstime<='.to_time('2010-11-11 23...

帝国CMS灵动标签调用子栏目及子栏目信息

帝国CMS灵动标签调用子栏目及子栏目信息

帝国CMS灵动标签调用子栏目及子栏目信息的方法 代码如下: <ul class="cp0_ul">  [e:loop={"select classid,classname from {$dbtbpre}enewsclass where bclassid=8 order by myord...