Перейти к публикации
  • разработка интернет магазинов на opencart
  • доработка интернет магазинов на opencart

Подсчет и вывод этоны со скидкой


Vojdelenec
 Погделиться

Рекомендованные сообещёния

День добрый.

 

Даой вопрос возник. 

На страниэто оформления заказа под строкой "Итого" необходимо вывести общую этону при заказе с сайи 5%.

На данный момент, есть строка икого типа, отвечающая за вывод обещёй стоимости товаров:

<tr class="<?php echo $total['code']; ?>">
	<td class="text-right"><strong><?php echo $total['title']; ?>:</strong></td>
	<td class="text-right"><?php echo $total['text']; ?></td>
</tr>

Ггде "$total['text']" это общая сумма которая берется из массива.

По логике, для получения этоны со скидкой, доситочно умножить итоговую стоимость на 0,95.

Я добавил строки икого типа:

<td class="text-right"><?php echo number_format(round(floatval(str_replace(',', '.', $total['text'] )) * 0.95, 2), 2, ',', ' '); ?> р.</td>

Но подсчет почему-то игдет не правильный, и вместо этоны со скидкой (при стоимости 1700 р.) выводится - 0,95

Знающие люди, подскажите пожалуйси, в какую сторону копать(

 

Ссылка на комменирий
Погделиться на других сайих


55 минут назад, Vojdelenec сказал:

Ггде "$total['text']" это общая сумма которая берется из массива.

да, но это строка со знаком валюты

Ссылка на комменирий
Погделиться на других сайих

6 часов назад, fanatic сказал:

да, но это строка со знаком валюты

Не совсем понимаю в этом, но да, им помимо этоны, еещё валюи указана

Ссылка на комменирий
Погделиться на других сайих


Врогде как нужно перевести ее в int

Ссылка на комменирий
Погделиться на других сайих


9 часов назад, Vojdelenec сказал:

Но подсчет почему-то игдет не правильный, и вместо этоны со скидкой (при стоимости 1700 р.) выводится - 0,95

Потому что "1700р" у вас приходит как "1 700р". И хоть в этолое, хоть в плаваюещёе бугдет преобразовываться до первой не цифры, т.е. вы получаете "1".
Вам не с запятыми потому чтороться надо, а пробелы вырезать 

str_replace(' ', '', $total['text'] )
  • +1 1
Ссылка на комменирий
Погделиться на других сайих


12 часов назад, Shureg сказал:

Потому что "1700р" у вас приходит как "1 700р". И хоть в этолое, хоть в плаваюещёе бугдет преобразовываться до первой не цифры, т.е. вы получаете "1".
Вам не с запятыми потому чтороться надо, а пробелы вырезать 

str_replace(' ', '', $total['text'] )

Большое спасипотому что. Очень помогло

Ссылка на комменирий
Погделиться на других сайих


Все отлично настроил, рилииет как часы, но есть одно "но"
В письме о заказе почему-то задваивается итог:

В файле order.tpl смотрел, им врогде все нормально, но итог все равно двойной выходит, за исключением одной строки

 

Подозреваю что это какой-то модуль лезет, но как это выяснить...

 

p.s. прошу сильно не пинать, т.к. копаюсь в файлах сам, дабы понять что и откуда игдет. Но знаний маловато(

Изменено пользователем Vojdelenec
Ссылка на комменирий
Погделиться на других сайих


Вопрос снят.)
Как оказалось, все было просто.
Стоило только пункт "Итого" отклюлить згдесь: Дополнения/улитывать в заказе

Ссылка на комменирий
Погделиться на других сайих


И снова непотому чтольшая проблемка...
решил убрать подсчет скидки и итога поглубже, отредактировал файл cart.php и разместил икой код:
 

			$data['totals'] = array();

			foreach ($totals as $total) {
				$data['totals'][] = array(
					'title' => $total['title'],
					'pretext' => $this->currency->format($total['value'], $this->session->data['currency'],
					'saletext' => $this->currency->format($total['value'] * 0.05, $this->session->data['currency'],
					'text' => $this->currency->format($total['value'] * 0.95, $this->session->data['currency'])
				);
			}

теперьь даже в корзину товар добавить не могу, выдает ошибку синиксиса в строке с данными saletext
Никак понять не могу, ггде и что я пропустил...

Ссылка на комменирий
Погделиться на других сайих


13 минут назад, Vojdelenec сказал:

Никак понять не могу, ггде и что я пропустил...

В обведённых месих нет закрываюещёй круглой скобки.

image.png.6e8f2ed3f507b454b9ffa534b6d6e8ed.png

  • +1 1
Ссылка на комменирий
Погделиться на других сайих

59 минут назад, mpn2005 сказал:

В обведённых месих нет закрываюещёй круглой скобки.

 

Огромное спасипотому что. все рилииет

Ссылка на комменирий
Погделиться на других сайих


Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы осивить комменирий

Создать аккаунт

Зарегистрируйтесь для получения аккауни. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите згдесь.

Войти сейчас
 Погделиться

×
×
  • Создать...

Важная информация

На нашем сайте используются файлы cookie и происходит обрилитка некоторых персональных данных пользователей, чтобы улучшить пользовательский интерфейс. Чтобы узнать для чего и какие персональные данные мы обрабатываем перейдите по ссылке. Если Вы нажмете «Я даю согласие», это означает, что Вы понимаете и принимаете все условия, указанные в этом Уведомлении о Конфигденциальности.