Братцы выручайте!
Есть массив сессии в которой после добавления товаров лежат данные о товаре.
У авторизованного пользователя это выглядит так:
У не авторизованного так:
При авторизации из базы берется скидка и и массив должен становиться как в первом варианте.
Пытался пройти в цикле:
Но так как скидки и старой цены в массиве нет, он не добавляется.
Пробовал изначально сделать так:
У не авторизованного так:
и менял цикл:
В итоге, общая сумма получается той что нужно, но сам массив никак не меняется. скидка и старая цена остаются равными 0.
Прошу вашей помощи, что я делаю не так? Спасибо.
Есть массив сессии в которой после добавления товаров лежат данные о товаре.
У авторизованного пользователя это выглядит так:
Код:
[массив] => Array
(
[5] => Array (id товара)
(
[количество] => 1
[имя] => товар
[картинка] => картинка
[бренд] => бренд
[скидка] => скидка
[старая цена] => старая цена
[цена] => цена со скидкой
)
[4] => Array (id товара)
(
[количество] => 1
[имя] => товар
[картинка] => картинка
[бренд] => бренд
[скидка] => скидка
[старая цена] => старая цена
[цена] => цена со скидкой
)
)
Код:
[массив] => Array
(
[5] => Array (id товара)
(
[количество] => 1
[имя] => товар
[картинка] => картинка
[бренд] => бренд
[цена ] => цена
)
[4] => Array (id товара)
(
[количество] => 1
[имя] => товар
[картинка] => картинка
[бренд] => бренд
[цена ] => цена
)
)
Пытался пройти в цикле:
Код:
foreach($_SESSION['массив'] as $i => $v){
if(!$v['старая цена']){
$v['старая цена'] = $v['цена'];
$v['цена'] = ($v['цена'] - ($v['цена'] * $скидка));
$v['скидка'] = $скидка;
$_SESSION['общая сумма'] += $v['количество'] * $v['цена'];
}else{
$_SESSION['общая сумма'] += $v['количество'] * $v['цена'];
}
}
Пробовал изначально сделать так:
У не авторизованного так:
Код:
[массив] => Array
(
[5] => Array (id товара)
(
[количество] => 1
[имя] => товар
[картинка] => картинка
[бренд] => бренд
[скидка] => 0
[старая цена] => 0
[цена] => цена
)
[4] => Array (id товара)
(
[количество] => 1
[имя] => товар
[картинка] => картинка
[бренд] => бренд
[скидка] => 0
[старая цена] => 0
[цена] => цена
)
)
Код:
foreach($_SESSION['массив'] as $i => $v){
if($v['старая цена'] == 0){
$v['старая цена'] = $v['цена'];
$v['цена'] = ($v['цена'] - ($v['цена'] * $скидка));
$v['скидка'] = $скидка;
$_SESSION['общая сумма'] += $v['количество'] * $v['цена'];
}else{
$_SESSION['общая сумма'] += $v['количество'] * $v['цена'];
}
}
Прошу вашей помощи, что я делаю не так? Спасибо.