帝国CMS模板调用购物车商品数量和总价
<?php/**&#160;*&#160;根据Cookie值对购物车商品数量和总价格调用&#160;*/&#160;require("class/connect.php");&#160;&#160;$totalProducts&#160;=&#160;0;&#160;&#160;&#160;&#160;//购物车商品总数&#160;$totalPri……
<?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>"; }?>
- 上一篇
帝国CMS验证码显示重复的解决办法
因为PHP4.2以后都不需要mt_srand播种,所以只要把这个禁用就可以了。方法,打开前台验证码文件e/showkey/index.php找到27行代码mt_srand((double)microtime()*1000000);将其注释掉或删除即可。 后台验证码e/admin/showke
- 下一篇
帝国CMS扩展SQL程序编写介绍和教程
基本范例:说明:下面例子都是以PHP文件放在系统根目录为基准。例1:连接MYSQL程序。(a.php)<?phprequire('e/class/connect.php');//引入数据库配置文件和公共函数文件require('e/class/db_sql.php');//引