Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.03.2014, 13:59   #1
bitup
 
Регистрация: 21.03.2014
Сообщений: 8
По умолчанию Автоматическое обновление цен

Здравствуйте!

Хотел бы сделать скриптик в интернет магазин типа 100*курс доллара (курс доллара каждый день будет изменятся). То есть, что бы была сегодняшняя цена http://optima-crimea.ua/home. Как это можно сделать? Понимаю, что такое нужно заказывать в фрилансеров, но хотелось бы самому сделать.

Если можно, то хотел бы услышать подсказки или ссылку на тему, где такое обсуждалось (как не искал, такой темы не нашел).
bitup вне форума Ответить с цитированием
Старый 21.03.2014, 14:10   #2
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Здесь нечего обсуждать – при выводе стоимости товаров, а также при всех расчетах при оформлении заказов прям так и делай:
Цитата:
Сообщение от bitup Посмотреть сообщение
100*курс доллара
Andkorol вне форума Ответить с цитированием
Старый 21.03.2014, 14:35   #3
bitup
 
Регистрация: 21.03.2014
Сообщений: 8
По умолчанию

Типа так:
<?php
$a=100;
$b=37;
$c=$a*$b;
?>

Сразу извиняюсь за тупой вопрос. А ели у меня таких $a - тысяча с разными ценами. То каждой присваивать свою переменную и свою формулу ($c), типа:
$a=100;
$ma=150;
$ner=200;

$cma=$ma*$b;
...

И так 1000 раз?
bitup вне форума Ответить с цитированием
Старый 21.03.2014, 15:08   #4
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от bitup Посмотреть сообщение
И так 1000 раз?
Чтоб не делать «так 1000 раз» – можно использовать функцию:
PHP код:
// определяем где-то в конфиге
$usd_rate 37// курс доллара

// стоимость с учетом курса доллара
function price($price$show_currency 0){
    global 
$usd_rate;
    
$new_price $price $usd_rate;
    return (
$show_currency 0) ? $new_price ' руб.' $new_price;
}

// использование функции при отображении стоимости товара и в расчетах
echo 'Цена товара: ' price(1001); // 3700 руб. – с указанием валюты (руб.)
$total_price price(100); // 7400 – без указания валюты, для расчетов 
Andkorol вне форума Ответить с цитированием
Старый 21.03.2014, 15:08   #5
djedai
Пользователь
 
Регистрация: 29.11.2010
Сообщений: 20
По умолчанию

Я тоже не силен.А если все товары с ценами поместить в массив,и циклом пробегать по элементам умножать на доллар?
djedai вне форума Ответить с цитированием
Старый 21.03.2014, 15:17   #6
bitup
 
Регистрация: 21.03.2014
Сообщений: 8
По умолчанию

Andkorol, большое спасибо. Еще новичок, мало что понимаю, но буду разбираться. Еще раз спасибо.
bitup вне форума Ответить с цитированием
Старый 21.03.2014, 17:00   #7
ATL
Форумчанин
 
Аватар для ATL
 
Регистрация: 26.01.2007
Сообщений: 278
По умолчанию

bitup,
PHP код:
// определяем где-то в конфиге
$usd_rate 37// курс доллара 
Здесь имеется ввиду, что Вы 1 раз определяете эту переменную, задаёте ей курс доллара. Описываете функцию. Дальше используете функцию там, где нужно выводить стоимость в рублях:
PHP код:
echo 'Цена товара: ' price(1001); 
Если курс доллара меняется - Вы изменяете только значение в переменной $usd_rate и стоимость обновится по всему сайту. Не придётся лопатить весь сайт и менять $ru_prise = $price * 37;

Если Вы используете БД, делаете выборку (напр. 200 чайников), у вас есть массив из 200 записей вида:
Код:
['id', 'name', 'vendor_name', 'usd_price']
Вы можете перебрать их в цикле и для всех добавить актуальную цену в рублях:
PHP код:
foreach ($result_array as $key => $val) {
  
$result_array[$key]['ru_price'] = price($val['usd_price'], 1);

На выходе у Вас будет обновлённый массив, в котором будет дополнительное значение - цена в рублях (ru_price).

Последний раз редактировалось ATL; 21.03.2014 в 17:05.
ATL вне форума Ответить с цитированием
Старый 21.03.2014, 20:23   #8
bitup
 
Регистрация: 21.03.2014
Сообщений: 8
По умолчанию

Что то для меня это трудно. Будет ли грамотно и правильно так?

В файле file.php:
<?php
$b1=37;

$a1=120;
$c1=$a1*$b1;

$a2=115;
$c2=$a2*$b1;

$a3=128;
$c3=$a3*$b1;
...
?>

В файле 1 с html:
<!--#include virtual="file.php" -->
<?php echo $c1; ?>

В файле 2 с html:
<!--#include virtual="file.php" -->
<?php echo $c2; ?>

В файле 3 с html:
<!--#include virtual="file.php" -->
<?php echo $c3; ?>
bitup вне форума Ответить с цитированием
Старый 21.03.2014, 20:30   #9
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от bitup Посмотреть сообщение
Будет ли грамотно и правильно так?
Нет, это ..овнокод.
Поясню цитатой:
Цитата:
Сообщение от bitup Посмотреть сообщение
И так 1000 раз?
Всё это вполне может работать как нужно – но назвать такой подход «грамотным и правильным» нельзя.
Andkorol вне форума Ответить с цитированием
Старый 21.03.2014, 22:32   #10
Виталий Желтяков
Старожил
 
Аватар для Виталий Желтяков
 
Регистрация: 19.04.2010
Сообщений: 2,702
По умолчанию

Парсите курс на сайте ЦБ и меняете свои цены. В интернете примеров много
Виталий Желтяков вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Автоматическое обновление программы dubailand Общие вопросы Delphi 9 02.01.2015 12:20
Обновление цен интернет-магазинов blin09 Фриланс 5 20.09.2013 07:49
Автоматическое обновление программы Paul Hindenburg Работа с сетью в Delphi 23 06.09.2011 15:51
Автоматическое обновление ogololobov2009 Microsoft Office Excel 1 27.01.2011 19:19
Автоматическое обновление ссылок Alex19789 Microsoft Office Excel 0 05.10.2009 10:24