|
挑戰php5
1. 可否講解一下書本18-31頁第13-14行與18-34頁110-111行 $i=count($_POST["updateid"]); for($j=0;$j<$i;$j++){ $cart->edit_item($_POST['updateid'][$j],$_POST['qty'][$j]); } 不太了解for部份 --------------------------- 2. function add_item($itemid,$qty=1,$price = FALSE, $info = FALSE) { if(!$price) { $price = wf_get_price($itemid,$qty); }
if(!$info) { $info = wf_get_info($itemid); }
if($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->_update_total(); } 若購物車中沒有商品add_item()就新增商品到購物車中 $this->items[]=$itemid; $this->itemqtys[$itemid] = $qty; $this->itemprices[$itemid] = $price; $this->iteminfo[$itemid] = $info; 將$itemid商品編號存到items屬性裡面 並且讓$itemid商品編號成為數量.價格.商品名稱的陣列索引 例如加入商品資訊後: $items = array(18,4,3); $iteminfo = array ("SONY VGN-FE25TP", "ASUS S6F", ASUS W7J ) 執行print_r($cart->iteminfo);可以得到 Array ( [18] => SONY VGN-FE25TP [4] => ASUS S6F [3] => ASUS W7J ) 商品編號成為了商品名稱的陣列索引 但是為什麼我想將add_item()的方式拿出來練習看看卻無法成功 $itemid = array(11,2); $info = array("A","B"); $items=$itemid; $iteminfo[$itemid] = $info; print_r($iteminfo);
請問要如何修改才能讓A陣列的值 成為B陣列的索引值?? --------------------------- 3. 若我希望將第十五章留言版的功能加在product.php頁面裡面的連結 製作一個"問與答"的功能 但唯一不一樣的是 1.我希望管理者能針對會員 每一問題個別回答 而且能新增新的回應 但同時保留舊的回應 2.當管理者新增新的回應時應該同時增加資料庫裡面的欄位該如何製作規劃呢? 謝謝回答 --------------------------- 4. 我後來還是用函式的方式製做出讓A陣列的值 成為B陣列的索引值 例如: $items = array(); $iteminfo = array(); function add_item($itemid, $info) { global $items; global $iteminfo; $items[]=$itemid; $iteminfo[$itemid] = $info; } add_item(33, "A"); add_item(66, "B"); print_r($items); print_r($iteminfo); 請問 1.是否沒辦法在不使用物件跟函式的狀況下讓A陣列的值 成為B陣列的索引值 2.為什麼在函式外使用 $items = array(); $iteminfo[$items] = array(); $items[] = 2; $iteminfo[] = "A"; $iteminfo[] = "B"; $iteminfo[$items] = array();這一行會出現錯誤呢? 而物件跟函式雖然也有 $iteminfo[$itemid] = $info;但卻不會有錯誤顯示 3.後來又想到 物件的方法裡面 是否沒有區域變數的問題 是因為在同一個類別裡面 所以方法裡面的屬性都看做全域變數嗎?所以不用宣告global還是有其它解釋呢? --------------------------- 5. 取出資料庫裡的資料 <?php while($row_RecCategory=mysql_fetch_assoc($RecCategory)){ 只能用while讀出嗎?可不可以使用foreach呢? --------------------------- 6. 書本第18-33頁第18-34頁第104-116行 為什麼要將它寫成顯示範圍呢? <?php foreach($cart->get_contents() as $item) { ?> ................................ ................................ <?php }?> 直接這樣不行嗎? <?php foreach($cart->get_contents() as $item) { ................................ ................................ ?> |