Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #291 (permalink)  
Старый 13.02.2018, 06:43
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от spinastr
Тут тоже текущий курс доллара?
Это курсы Yahoo, и их можно получать без всякого РНР сервера. Удобно, но, бывает, что и нет ответа от этого сервера. Причина конечно мне не ведома. Если использовать Yahoo, то в нем нельзя указать дату запрашиваемую, поэтому нужно хранить на клиенте курс, чтобы сравнивать с чем-то для расчета динамики.
Ответить с цитированием
  #292 (permalink)  
Старый 13.02.2018, 06:57
Профессор
Отправить личное сообщение для spinastr Посмотреть профиль Найти все сообщения от spinastr
 
Регистрация: 02.05.2016
Сообщений: 390

laimas,
Я лучше подожду может этот скрипт. Может удастся что придумать.
Ответить с цитированием
  #293 (permalink)  
Старый 13.02.2018, 07:05
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от spinastr
Может удастся что придумать.
А что тут думать, выходные надо учитывать. А вот вам нужно определиться чего нужно. Если курс в шапке понятен, то что такое в боксе у вас где два курса? А я об этом писал, что если в боксе два курса, то нужно их выводить с датами, в противном случае в боксе тоже должен быть один курс - за текущую дату.
Ответить с цитированием
  #294 (permalink)  
Старый 13.02.2018, 09:37
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Этот записать в current.json

{"current":{"date":"13.2.2018","value":58.02,"rate ":1},"previous":{"date":"12.2.2018","value":58.17, "rate":1}}

Код current.php должен быть таким:

<?
$day = date('w');

if($day && $day<>6) { //если не воскресенье и суббота

    $dir = dirname(__FILE__);
    chdir($dir);

    $currency = json_decode(file_get_contents('current.json'));

    libxml_use_internal_errors();
    $xml = simplexml_load_file('http://www.cbr.ru/scripts/XML_daily.asp?date_req='.date('d/m/Y'));

    $date = date('j.n.Y', strtotime($xml->attributes()->Date));

    foreach ($xml->children() as $child) {
        if($child->NumCode==840) {
            $usd = round((float)str_replace(',', '.', $child->Value), 2);
            break;
        }
    }
    
    if($rate = $usd - $currency->current->value) $rate = $rate < 0 ? 1 : 2;
    
    $currency->previous = clone $currency->current;
    $currency->current->date = $date;
    $currency->current->value = $usd;
    $currency->current->rate = $rate;
    
    chmod($dir, 0777);
    file_put_contents('current.json', json_encode($currency));
    chmod($dir, 0700);

}
?>


В js коде вывода изменения в структуре массивов:

$('.'+k).html("$ " + o.value + ' <b class=' + ['','down','up'][o.rate] +'>' + ['','▼','▲'][o.rate] +'</b>').attr("title", o.date)

Последний раз редактировалось laimas, 13.02.2018 в 11:27.
Ответить с цитированием
  #295 (permalink)  
Старый 13.02.2018, 13:58
Профессор
Отправить личное сообщение для spinastr Посмотреть профиль Найти все сообщения от spinastr
 
Регистрация: 02.05.2016
Сообщений: 390

Сообщение от laimas
А что тут думать, выходные надо учитывать. А вот вам нужно определиться чего нужно. Если курс в шапке понятен, то что такое в боксе у вас где два курса? А я об этом писал, что если в боксе два курса, то нужно их выводить с датами, в противном случае в боксе тоже должен быть один курс - за текущую дату.

это просто для примера, нужно просто один бокс, как на том сайте. Удалить не проблема один див. На счёт даты, то при наведении, подсказка. Это в виде кнопки на панели курс и стрелка, там у меня переход на страницу с информерами.
Ответить с цитированием
  #296 (permalink)  
Старый 13.02.2018, 14:01
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Это уже не мои проблемы, что для примера, а что надо.
Ответить с цитированием
  #297 (permalink)  
Старый 13.02.2018, 14:05
Профессор
Отправить личное сообщение для spinastr Посмотреть профиль Найти все сообщения от spinastr
 
Регистрация: 02.05.2016
Сообщений: 390

laimas,

Вроде всё сделал, что дальше делать?

Последний раз редактировалось spinastr, 14.02.2018 в 04:32.
Ответить с цитированием
  #298 (permalink)  
Старый 13.02.2018, 14:08
Профессор
Отправить личное сообщение для laimas Посмотреть профиль Найти все сообщения от laimas
 
Регистрация: 14.01.2015
Сообщений: 12,989

Сообщение от spinastr
Вроде всё сделал, что дальше делать?
Радоваться. Если даты курсов будут некорректны, значит не делать запрос нужно не в субботу и воскресенье, а в воскресенье и понедельник. Для этого заменить здесь if($day && $day<>6) { 6 на 1.
Ответить с цитированием
  #299 (permalink)  
Старый 13.02.2018, 14:22
Профессор
Отправить личное сообщение для spinastr Посмотреть профиль Найти все сообщения от spinastr
 
Регистрация: 02.05.2016
Сообщений: 390

Урааааа, спасибо посмотрим сегодня в 0:05 что будет!
Ответить с цитированием
  #300 (permalink)  
Старый 13.02.2018, 14:22
Профессор
Отправить личное сообщение для spinastr Посмотреть профиль Найти все сообщения от spinastr
 
Регистрация: 02.05.2016
Сообщений: 390

laimas,
Ураааа, посмотрим что будет в 0:05
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Вывод контента в модалном окне, чтобы к нему можно было обратиться по ссылке decadent42 jQuery 3 11.04.2016 15:12
Преключатель валют alexmixaylov jQuery 7 21.10.2014 13:10
Проблема с выводом курса валют bubanay Элементы интерфейса 0 20.12.2013 20:42
Вывод переменных MasterHrust Javascript под браузер 4 03.08.2011 15:41
Вывод данных в Друпал 6 из MySQL, небольшая работа torquemada Работа 1 22.05.2011 17:05