|
|
Модератор форума: Yuri_G |
Сообщество uCoz » Вебмастеру » Общие вопросы от вебмастеров » Нужна помощь по формуле if... (арифметическое действие) |
Нужна помощь по формуле if... |
Здравствуйте!
Имеется вот такая формула: <? $OTHER1$/2.00 ?> где $OTHER1$ - цена в белорусских рублях 2.00 - текущий курс доллара Когда текущий курс целое число, то проблем никаких нет. Когда предположим 1.97, то результат деления получаю: 10.1522842639594 - 13 цифр дробных. Можно ли как-то с помощью substr и strpos обрезать результат в формуле до двух знаков дробных после точки? Т.е. что бы при курсе 2.01 <? $OTHER1$/2.01 ?> результат получать не 9.95024875621891 $ ============> а 9.95 $ |
Странно...
<?$GROUP_ID$ * 200?> - работает <?substr(($GROUP_ID$ * 200),0,1)?> - не работает Может быть я ошибаюсь, но раньше такие формулы с системными переменными выполнялись без проблем. P.S. Кстати, если <?$GROUP_ID$ * 200?> засунуть в информер, а потом вывести вот так: <?substr($MYINF_1$,0,1)?> То все выполняется корректно. ![]() P.P.S. Таким образом, вашу формулу можно построить так: 1. В информере $MYINF_1$ выполняем функцию деления <?цена/курс?> 2. В место, где выводится окончательный результат, вставляем это: <?ifnot(strpos($MYINF_1$),'.')='-1'?> $MYINF_1$ <?else?> <?substr($MYINF_1$,0,(strpos($MYINF_1$,'.')+3))?> <?endif?> Сперва выполняется проверка есть ли в результате деления точка. Если нет, то получаем "-1" и просто выводим результат информера $MYINF_1$ без обрезания. А если точка есть, то обрезаем до двух знаков после нее. Рабочий пример: http://umatrix.ucoz.com/index/arifmetika/0-7 Но беда в том, что в информер нельзя засунуть содержимое поля $OTHER1$ на странице материала, поэтому... ![]() Сообщение отредактировал mrx - Вторник, 22 Май 2018, 02:42:37
|
Canon_L, substr ждет на входе строку, поэтому не работает. Как вариант безобидный скриптик:
Код <p>Курс: <script>document.write(Math.ceil((<? $OTHER1$ / 2.0 ?>)*100)/100)</script>$</p> Муж рассказал жене, что у него есть любовница. Причина смерти: коронавирус.
Сообщение отредактировал leonoff(on) - Вторник, 22 Май 2018, 17:45:39
|
Александр, смотрите какая история. В HTML попадает:
Код <div class="board-item price-usd" id="usd"> <!--- НАЧАЛО КОНВЕРСИИ ---> <script>document.write(Math.ceil((301.507537688442)*100)/100</script> <!--- КОНЕЦ КОНВЕРСИИ ---> </div> Но на самой странице пусто, т.е. результат не показывается. |
Canon_L, скобки нет в конце
Код document.write(Math.ceil((301.507537688442)*100)/100) Муж рассказал жене, что у него есть любовница. Причина смерти: коронавирус.
|
| |||
| |||