Jump to content


Photo
- - - - -

Положительное число скидки в письме и поля для цен товара


Best Answer Cheren-dow , 17 February 2015 - 09:45

immortal727, привести к числу процент можно так:

abs((int)$basketInfo['discount']) 

И когда товар начинаем оформлять видно, что поля с ценой и стоимостью там одинаковые. Видимо эти поля и загоняются в массив. Похоже и там надо поле с ценой и скидкой изменять, но там я не знаю где копать.

Так это же математика, можно посчитать(к сумме прибавить процент).

$procent    = abs((int)$basketInfo['discount']);
$procentSum = ($basketInfo['price'] / 100) * $procent;
$newSum     = $basketInfo['price'] + $procentSum; // получаем цену + процент
Go to the full post


  • This topic is locked This topic is locked
4 replies to this topic

#1 immortal727

immortal727
  • JBZoo User (rus)
  • User rate: 0.1
  • posts: 765
  • topics: 253

Posted 16 February 2015 - 14:26

В форму письма добавлены такие поля как скидка и цена товара.

1. Скидка сейчас показывает  -5 %, а надо просто 5 %. Как это сделать?

Сейчас в коде jbbasketitems.php

$html[] = 'Скидка (%): '.$basketInfo['discount'].',';

2. Также в поля товары добавлена цена товара и сумма.  Сумма как была так и есть в общем, там показывается уже общая стоимость товара уже со скидкой. А вот в цене должна отображаться сумма товара без скидки, как есть.

Подскажите какую переменную выводить для этого?

 

P.S.
  Поля выводятся в строки. Пример вывода:
 

Название: Ассорти, Количество: 1, Цена: 437, Скидка (%): -5 %, Сумма: 437; 

Название: Кальцоне, Количество: 1, Цена: 437, Скидка (%): -5 %, Сумма: 437; 


  • 0

#2 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 17 February 2015 - 01:37

immortal727, попробуйте

$html[] = 'Скидка (%): ' . (int)$basketInfo['discount'] . ','; 

По второму вопросу: Посмотрите что хранится в переменной $basketInfo через var_dump или print_r 


  • 0
Изображение
 

#3 immortal727

immortal727
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0.1
  • posts: 765
  • topics: 253

Posted 17 February 2015 - 08:20

Вывеласть такая информация из массива
Array ( [hash] => 70 [sku] => 70 [itemId] => 70 [quantity] => 1 [price] => 437 [currency] => RUB [priceDesc] => Размер [priceParams] => Array ( ) [discount] => -5 % [name] => Ассорти ) Название: Ассорти, Количество: 1, Цена: 437, Скидка (%): -5, Сумма: 437; 
Судя по параметрам туда не передается первоначальная цена без скидки. Сразу уже заносится со скидкой. 
Для примера сделал товар со скидкой 
http://www.urafaelya.ru/pitstsa
И когда товар начинаем оформлять видно, что поля с ценой и стоимостью там одинаковые. Видимо эти поля и загоняются в массив. Похоже и там надо поле с ценой и скидкой изменять, но там я не знаю где копать.
А функцию int() пробовал до этого, не подходит, забыл написать про это.
 

Attached Files


  • 0

#4 Cheren-dow

Cheren-dow
  • JBZoo User (rus)
  • User rate: 95.7
  • posts: 5060
  • topics: 31

Posted 17 February 2015 - 09:45   Best Answer

immortal727, привести к числу процент можно так:

abs((int)$basketInfo['discount']) 

И когда товар начинаем оформлять видно, что поля с ценой и стоимостью там одинаковые. Видимо эти поля и загоняются в массив. Похоже и там надо поле с ценой и скидкой изменять, но там я не знаю где копать.

Так это же математика, можно посчитать(к сумме прибавить процент).

$procent    = abs((int)$basketInfo['discount']);
$procentSum = ($basketInfo['price'] / 100) * $procent;
$newSum     = $basketInfo['price'] + $procentSum; // получаем цену + процент

  • 2
Изображение
 

#5 immortal727

immortal727
  • Topic Starter
  • JBZoo User (rus)
  • User rate: 0.1
  • posts: 765
  • topics: 253

Posted 17 February 2015 - 12:56

И как я мог забыть про математику. Но расчет немножко не верен.

$procent    =100 - abs((int)$basketInfo['discount']);
$newSum = ($basketInfo['price'] * 100) / $procent; // получаем цену + процент

При таком раскладе считает точно.


  • 0




Click to return to top of page in style!