Перейти до вмісту
Пошук в
  • Детальніше...
Шукати результати, які ...
Шукати результати в ...

[Решено] Округление цены до сотен (например 5762->5800 руб.)


Recommended Posts

Основная валюта - доллар. Вторая валюта - рубль. Курс рубля 8700.

Есть цены в центах, соответсвенно в рублях получаются не круглые числа.

Да и хождение наличности мелкой отсутствует.

 

Надо округлять цену в рублях до сотен, например 6235 -> 6200 руб. или 3860 -> 3900 руб.

 

кто знает где что менять? помогите!

 

версия 1.5.4.1 

 

round($price,-2);     <<<<<<<    решение как бы есть в факе и как бы его нет, так как не указано, где эта строка.

 

Куплю адрес куда вставлять эту строку :D

 

 

Надіслати
Поділитися на інших сайтах


в шаблонах, все вхождения <?php echo $price; ?> заменить на <?php echo round($price,-2); ?>

 

и <?php echo $product['price']; ?> , соответсвенно :)

А не замахаешься шаблоны править?

 

system.library/currency.php строку



        $string .= number_format(round($value, (int)$decimal_place), (int)$decimal_place, $decimal_point, $thousand_point);

заменить на



        $string .= number_format(round($value, -2), (int)$decimal_place, $decimal_point, $thousand_point);

верняк:)

  • +1 2
Надіслати
Поділитися на інших сайтах

$string .= number_format(round($value, -2), (int)$decimal_place, $decimal_point, $thousand_point);

 

отлично!

только это (округление) нужно для рубля, а для доллара нет

 

как будет выглядеть условие проверки валюты, например (RUB) ?

Надіслати
Поділитися на інших сайтах


как будет выглядеть условие проверки валюты, например (RUB) ?

 

Так:

    	        if ($currency == 'RUB')
		{
			$string .= number_format(round($value, -2), (int)$decimal_place, $decimal_point, $thousand_point);
		}
		else
		{
			$string .= number_format(round($value, (int)$decimal_place), (int)$decimal_place, $decimal_point, $thousand_point);
		}
  • +1 4
Надіслати
Поділитися на інших сайтах


  • 4 weeks later...

Вот за это спасибо! А что тут можно подправить что бы округлялась цена в рублях до 500 рублей? Напр. 8200=8000   8700=8500  8800=9000

Змінено користувачем afwollis
Надіслати
Поділитися на інших сайтах


  • 7 months later...

 

А не замахаешься шаблоны править?

 

system.library/currency.php строку

        $string .= number_format(round($value, (int)$decimal_place), (int)$decimal_place, $decimal_point, $thousand_point);

заменить на

        $string .= number_format(round($value, -2), (int)$decimal_place, $decimal_point, $thousand_point);

Что то найти не могу этот файл в корне. 1.5.5.1.1

Надіслати
Поділитися на інших сайтах


В каком корне? ))

system/library

Надіслати
Поділитися на інших сайтах

Гість
Ця тема закрита для публікації повідомлень.
  • Зараз на сторінці   0 користувачів

    • Ні користувачів, які переглядиють цю сторінку

×
×
  • Створити...

Important Information

На нашому сайті використовуються файли cookie і відбувається обробка деяких персональних даних користувачів, щоб поліпшити користувальницький інтерфейс. Щоб дізнатися для чого і які персональні дані ми обробляємо перейдіть за посиланням . Якщо Ви натиснете «Я даю згоду», це означає, що Ви розумієте і приймаєте всі умови, зазначені в цьому Повідомленні про конфіденційність.