Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/topic.php on line 737
Форумы портала PHP.SU :: Простой код что бы умножить два числа

 PHP.SU

Программирование на PHP, MySQL и другие веб-технологии
PHP.SU Портал     На главную страницу форума Главная     Помощь Помощь     Поиск Поиск     Поиск Яндекс Поиск Яндекс     Вакансии  Пользователи Пользователи


 Страниц (2): [1] 2 »   

> Описание: добрые люди, пожалуйста помогите )
madest
Отправлено: 13 Января, 2015 - 22:45:40
Post Id


Новичок


Покинул форум
Сообщений всего: 27
Дата рег-ции: Янв. 2015  


Помог: 0 раз(а)




Доброго времени суток, уважаемые пользователи. Поставил перед собой цель перевести цены, на всех записях сайта, из долларов в рубли. Как правильно прописать умножение на определенный, заданный мною, курс (число)? Что бы при изменении, где нибудь в одном месте, этого курса, цены менялись сразу на всех записях. Ведь это можно сделать через PHP? Если есть какие нибудь мысли, поделитесь Пожалуйста. Буду очень признателен.

Я очень новичок в этом деле. Примерно я представляю себе это так:
а = "14000"; (допустим это курс)
b = определённое число в записях;
....a*b
как это воплотить?
 
 Top
LIME
Отправлено: 13 Января, 2015 - 22:59:24
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Выводить только через ф-цию
(Добавление)
Или хранить дополнительным полем и пересчитывать при изменении курса
 
 Top
madest
Отправлено: 13 Января, 2015 - 23:09:34
Post Id


Новичок


Покинул форум
Сообщений всего: 27
Дата рег-ции: Янв. 2015  


Помог: 0 раз(а)




при изменении курса банка влесть в ручную в шабон и поменять одно число это не проблема, вопрос в том как это всё настроить?

больше я ничего не понял
 
 Top
LIME
Отправлено: 13 Января, 2015 - 23:15:43
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




В шаблонах выводить через ф-цию
что тут не понятно?
Или хранить цены в рублях отдельно
тут что непонятного?
найми лучше программиста
 
 Top
madest
Отправлено: 13 Января, 2015 - 23:35:31
Post Id


Новичок


Покинул форум
Сообщений всего: 27
Дата рег-ции: Янв. 2015  


Помог: 0 раз(а)




LIME пишет:
В шаблонах выводить через ф-цию
что тут не понятно?
Или хранить цены в рублях отдельно
тут что непонятного?
найми лучше программиста


если б я мог нанять программиста, я бы сюда не писал )
 
 Top
LIME
Отправлено: 13 Января, 2015 - 23:45:24
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Так за тебя написать невозможно
не тот случай
разве что
PHP:
скопировать код в буфер обмена
  1.  
  2. function price($price){
  3.     return $price * 65.4;
  4. }
  5.  
 
 Top
madest
Отправлено: 14 Января, 2015 - 07:39:10
Post Id


Новичок


Покинул форум
Сообщений всего: 27
Дата рег-ции: Янв. 2015  


Помог: 0 раз(а)




а потом $price в каждой записи прописать?
типо - $price=77 ?
 
 Top
Panoptik
Отправлено: 14 Января, 2015 - 10:42:10
Post Id



Постоянный участник


Покинул форум
Сообщений всего: 2493
Дата рег-ции: Нояб. 2011  
Откуда: Одесса, Украина


Помог: 131 раз(а)




типа
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <div>
  3. <?php foreach($products as $product): ?>
  4.    <div><?=$product['name'];?></div>
  5.    <div><?=price($product['price']);?></div>
  6. <?php endforeach; ?>
  7. </div>
  8.  


-----
Just do it
 
 Top
madest
Отправлено: 14 Января, 2015 - 11:22:27
Post Id


Новичок


Покинул форум
Сообщений всего: 27
Дата рег-ции: Янв. 2015  


Помог: 0 раз(а)




Panoptik пишет:
типа
CODE (htmlphp):
скопировать код в буфер обмена
  1.  
  2. <div>
  3. <?php foreach($products as $product): ?>
  4.    <div><?=$product['name'];?></div>
  5.    <div><?=price($product['price']);?></div>
  6. <?php endforeach; ?>
  7. </div>
  8.  


А куда этот код вставлять? И я так понимаю мне потом нужно в функшен.пхп вставить сам курс? например: $price=14000
я правильно понимаю? извините за мою необразованность в этом не лёгком деле.
 
 Top
GoDr
Отправлено: 15 Января, 2015 - 10:25:40
Post Id



Посетитель


Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015  
Откуда: Тамбов


Помог: 17 раз(а)




madest, данные от куда берёшь? Из html-страницы? Если ДА, всё "ручками" или через javascript.

А если Данные хранятся в базе данных и страницы формируются на сервере средствами PHP, то всё очень просто.

как вариант:
1. Создай файл, к примеру valuta.php
закинь туда код типа
PHP:
скопировать код в буфер обмена
  1. <?PHP
  2. // Курс доллара
  3. define('_KURS_DOL', 1400);

2. Подключи этот файлик к своему проекту

3. Ну и дальше, где у тебя непосредственно выводится цена, добавь что-то по типу

Поменялся курс, залезай в valuta.php и правь.

А ещё лучше сразу забирать курс валюты с какого-нибудь сайта, например, с того Центрабанка (http://www.cbr.ru/scripts/Root.asp?PrtId=SXML).


-----
Система управления веб-содержимым Lotos CMS
 
 Top
LIME
Отправлено: 15 Января, 2015 - 11:24:21
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




Ф-ция лучше
Можно обратно быстро вернуть
быстро на гульдены перейти
и не шариться больше по шаблонам
 
 Top
GoDr
Отправлено: 15 Января, 2015 - 13:20:24
Post Id



Посетитель


Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015  
Откуда: Тамбов


Помог: 17 раз(а)




LIME пишет:
Ф-ция лучше
Можно обратно быстро вернуть
быстро на гульдены перейти
и не шариться больше по шаблонам
Ну это уже как фантазии хватит.. Можно и такое сделать... Сам класс
PHP:
скопировать код в буфер обмена
  1. class LibPrice
  2. {
  3.     private static $valuta = array(
  4.         'USD' => '1',
  5.         'EUR' => '1',
  6.         'JPY' => '1'
  7.     );
  8.  
  9.     private static $_resource;
  10.  
  11.     private $list = array();
  12.  
  13.     public static function getNewPrice($price, $valuta = 'USD')
  14.     {
  15.         // получаем курсы валют
  16.         if (!is_object(self::$_resource)) {
  17.             $class_name = __CLASS__;
  18.             self::$_resource = new $class_name;
  19.  
  20.             $cbr = self::$_resource;
  21.             if ($cbr->load()) {
  22.                 foreach(self::$valuta as $key => $value){
  23.                     self::$valuta[$key] = $cbr->get($key);
  24.                 }
  25.             }
  26.         }
  27.  
  28.         if(array_key_exists($valuta, self::$valuta)){
  29.             $price = $price / self::$valuta[$valuta];
  30.         }
  31.  
  32.         return $price;
  33.     }
  34.  
  35.     public function load()
  36.     {
  37.         $xml = new DOMDocument();
  38.         $url = 'http://www.cbr.ru/scripts/XML_daily.asp?date_req=' . date('d.m.Y');
  39.  
  40.         if (@$xml->load($url)) {
  41.             $this->list = array();
  42.  
  43.             $root = $xml->documentElement;
  44.             $items = $root->getElementsByTagName('Valute');
  45.  
  46.             foreach ($items as $item) {
  47.                 $code = $item->getElementsByTagName('CharCode')->item(0)->nodeValue;
  48.                 $curs = $item->getElementsByTagName('Value')->item(0)->nodeValue;
  49.                 $this->list[$code] = floatval(str_replace(',', '.', $curs));
  50.             }
  51.  
  52.             return true;
  53.         } else
  54.             return false;
  55.     }
  56.  
  57.     public function get($cur)
  58.     {
  59.         return isset($this->list[$cur]) ? $this->list[$cur] : 0;
  60.     }
  61. }

Вызвать можно так (переводим 1555 рублей в доллары по сегодняшнему курсу)
PHP:
скопировать код в буфер обмена
  1. echo LibPrice::getNewPrice(1555, 'USD');


PS
ничего комментировать не стал в коде, сделал на скорую руку.. Но прикольно получилось, сам не ожидал Радость

(Отредактировано автором: 15 Января, 2015 - 13:25:24)



-----
Система управления веб-содержимым Lotos CMS
 
 Top
madest
Отправлено: 15 Января, 2015 - 23:31:45
Post Id


Новичок


Покинул форум
Сообщений всего: 27
Дата рег-ции: Янв. 2015  


Помог: 0 раз(а)




Бля я вообще ничё не понимаю ) у меня сайт просто на вордпресс. а что там как... я только понял про файл курс пхп... дальше дебри... спасибо конечно что отозвались
 
 Top
LIME
Отправлено: 15 Января, 2015 - 23:58:54
Post Id


Активный участник


Покинул форум
Сообщений всего: 10732
Дата рег-ции: Нояб. 2010  


Помог: 322 раз(а)




GoDr хм))
так дело не в виде ф-ции а в том чтобы локализовать действие в одном месте
и....не шариться больше по шаблонам
(Добавление)
И лоадер курса лучше сделать отдельным классом чтоб твой был открыт к изменению
(Добавление)
Ой)) к расширению то есть
(Добавление)
madest ну смотри мою ф-цию и пример ее использования у Паноптика
если это дебри то бросай свою затею и ищи фрилансеров
 
 Top
GoDr
Отправлено: 16 Января, 2015 - 08:18:20
Post Id



Посетитель


Покинул форум
Сообщений всего: 446
Дата рег-ции: Янв. 2015  
Откуда: Тамбов


Помог: 17 раз(а)




так о чём может идти речь если не известно что за движок и как устроена система в целом Улыбка Тут буквально пару постов выше выяснилось что это вордпресс ))))

Цитата:
И лоадер курса лучше сделать отдельным классом чтоб твой был открыт к изменению
Как же сказал, что на скорую руку Радость Конечно отдельным классом, ведь сервер может быть недоступен, а сайту работать то нужно... Я просто намекнул что можно вообще не заморачиваться с "ручным" изменением данных...

Цитата:
так дело не в виде ф-ции а в том чтобы локализовать действие в одном месте
А по этому нужно знать с каким скриптом работаем Хорошо Кстати, нужно делить, а то если 10руб * 65.5 = 655 баксов Ха-ха Хотя с курсами нужно более подробно думать.. например, ены сотнями продают..


-----
Система управления веб-содержимым Lotos CMS
 
 Top
Страниц (2): [1] 2 »
Сейчас эту тему просматривают: 0 (гостей: 0, зарегистрированных: 0)
« Напишите за меня, пожалуйста »


Все гости форума могут просматривать этот раздел.
Только зарегистрированные пользователи могут создавать новые темы в этом разделе.
Только зарегистрированные пользователи могут отвечать на сообщения в этом разделе.
 



Powered by PHP  Powered By MySQL  Powered by Nginx  Valid CSS  RSS

 
Powered by ExBB FM 1.0 RC1. InvisionExBB