對,我是要單獨計算,因為每一項產品單價都不一樣,單位以箱計算,例如:定價一箱 蘋果120元丶橘子80元 ,運費統一為一箱為80元 二箱為100元 三箱110元,如果我定2箱蘋果=120*2+100元=340元,如果是三箱=120*3+110=470元。
Jom3638 wrote:對,我是要單獨計算...(恕刪) 把你的要的條件,都寫入判斷,應該很簡單的,數量1,加運費90,數量2,加運費100,數量3,加運費110,用數量,判斷加運費。只是如果還有其他的,就要再加判斷而已,還不能衝突到。是不難的事。
謝謝heartgame的意見,我有試過用數量做判斷,但是不行,我是參考dreamweavercs6的相關書籍光碟內的購物車程式內容,其中有個加入運費的php檔,我有修改過,其中內容紅色字部分是我改過的地方,程式碼如下,想請問如何修改?<?php/*由 webforce cart v.1.2 修改 (http://webforce.co.nz/cart)---------------------------------------------------------織夢平台2005 - 分享是成長的開始http://www.e-dreamer.idv.tw*/class edCart {var $total = 0;var $deliverfee = 0; //修改,運費var $grandtotal = 0; //加上了運費後的總合費用var $itemcount = 0;var $items = array();var $itemprices = array();var $itemqtys = array();var $iteminfo = array();var $itempic = array();function cart() {} // 宣告函數function get_contents(){ // 取得購物車內容$items = array();foreach($this->items as $tmp_item){$item = FALSE;$item['id'] = $tmp_item;$item['qty'] = $this->itemqtys[$tmp_item];$item['price'] = $this->itemprices[$tmp_item];$item['info'] = $this->iteminfo[$tmp_item];$item['pic'] = $this->itempic[$tmp_item];$item['subtotal'] = $item['qty'] * $item['price'];$items[] = $item;}return $items;}function add_item($itemid,$qty=1,$price = FALSE, $info = FALSE, $pic = FALSE){ // 新增至購物車//if(!$price){//$price = ed_get_price($itemid,$qty);//}//if(!$info){//$info = ed_get_info($itemid);//}if(isset($this->itemqtys[$itemid]) && $this->itemqtys[$itemid] > 0){$this->itemqtys[$itemid] = $qty + $this->itemqtys[$itemid];$this->_update_total();} else {$this->items[]=$itemid;$this->itemqtys[$itemid] = $qty;$this->itemprices[$itemid] = $price;$this->iteminfo[$itemid] = $info;$this->itempic[$itemid] = $pic;}$this->_update_total();}function edit_item($itemid,$qty){ // 更新購物車數量if($qty < 1) {$this->del_item($itemid);} else {$this->itemqtys[$itemid] = $qty;}$this->_update_total();}function del_item($itemid){ // 移除購物車$ti = array();$this->itemqtys[$itemid] = 0;foreach($this->items as $item){if($item != $itemid){$ti[] = $item;}}$this->items = $ti;$this->_update_total();}function empty_cart(){ // 清空購物車$this->total = 0;$this->itemcount = 0;$this->items = array();$this->itemprices = array();$this->itemqtys = array();$this->itemdescs = array();}function _update_total(){ // 更新購物車的內容$this->itemcount = 0;$this->total = 0;if(sizeof($this->items > 0)){foreach($this->items as $item) {$this->total = $this->total + ($this->itemprices[$item] * $this->itemqtys[$item]);$this->itemcount++;}}if ($item['qty'] = 1) { $this->deliverfee = 180; } //請設定購物車的運費if ($item['qty'] = 2) { $this->deliverfee = 90; }if ($item['qty'] = 3) { $this->deliverfee = 150; }$this->grandtotal = $this->total + $this->deliverfee; //計算最後總計}}?>
Jom3638 wrote:謝謝heartgame...(恕刪) 不行,會有不行的訊息或錯誤,要會查找問題點,程式才做的下去吧。我的PHP寫法不是這種,所以看不懂,且沒有資料庫欄位定義,會想各種可能。不要動太多,先在空白處,秀出數量,再引用數量,判斷在空白處,出現金額,先不動主體,達到功能,再對主體改看看,我會如此做。