人民 我想建立一個購物車,所以我必須通過ID,數量和LOCATION_ID的功能。在函數中,如果找到類似的id和location_id,我會查看傳入的id和location_id。我會+1的項目。但是,如果我使用數組中的函數,它不起作用。 下面是另一個函數我建立以測試變量傳遞給的foreach內起作用。 但就是不說第一變量i過去了。它只會保存最新的變量。的Cookie中的foreach不救
下面是我的功能代碼:
static public function test($id , $per_min, $location_id_cart = 0){
echo $new_cart = $id.'-'.$per_min.'-'.$location_id_cart;
if(isset($_COOKIE['cart_item'])){
$last = $_COOKIE['cart_item'];
$testing = $last.','.$new_cart;
}else{
$testing = $new_cart;
}
$set = setcookie("cart_item", $testing, time()+3600);
var_dump($_COOKIE);
}
下面是我的代碼調用該函數:
$id = 125;
$multi_location = array(636 , 789);
$multi_quantity = array();
$multi_quantity[636] = 5;
$multi_quantity[789] = 10;
$array_key = array_keys($multi_quantity);
foreach($array_key as $o){
if(!in_array($o , $multi_location)){
unset($multi_quantity[$o]);
}
}
$count = 0;
foreach($multi_location as $i){
ZCart::test($id , $multi_quantity[$i], $i);
}
我的結果:
'cart_item' => string '125-10-789' (length=10)
我預期的結果:
'cart_item' => string '125-5-636,125-10-789'
如果我刷新我的網頁,結果我得到的是:
'cart_item' => string '125-10-789,125-10-789,125-10-789,125-10-789,125-10-789,125-10-789,125-10-789'
的cookie只能保存在數組中給出的最新值。它不會將125-5-636保存到cookie中。 爲什麼?任何人都可以幫我解決這個問題嗎?謝謝!
OMG!有用!!!!非常感謝你!!! =) – 2012-02-13 09:59:17
沒問題:)你明白爲什麼它不工作?我不是最好的解釋! – Darkzaelus 2012-02-13 10:00:00
耶懂了。首先,我想用會話做購物車,但是在我的網站實現HTTPS後,所有會話都出錯了。因此我認爲Cookie比我的網站情況更安全。在https中創建的會話無法在http中訪問。嘗試從網絡的方法來解決它..但他們都沒有工作。 – 2012-02-13 10:22:58