|
Цитата:
После этого запустить current.php браузером. |
Цитата:
|
laimas,
права папки изменил, запустил, белый лист |
{"current":{"date":"11.2.2018","value":0,"rate":0},"previous":{"date":"10.2.2018","value":58.17,"rate":1}} |
Цитата:
{"current":{"date":"11.2.2018","value":0,"rate":0} ,"previous":{"date":"10.2.2018","value":58.17,"rat e":1}} Все работает, это новый курс. Теперь открыть .htaccess и убрать # перед инструкцией, чтобы закрыть папку. Сохранить .htaccess. Все, теперь дело только за cron, если путь корректный (хотя если судить по описанию, это дикость), все будет работать. |
![]() На юкозе стоит ограничение по Get запросу, могут api заблокировать ссылка на гет запрос юкоз скрипт может отправлять не более 2.5 запросов в минуту. |
Цитата:
|
Цитата:
|
laimas,
СПАСИБО ВАМ! мне только нужно сделать одну строчку $ 56.77 ▲ если стрелка вверх то зелёная в низ красная, я её в панель вставлю там уже есть стилизация. |
Цитата:
|
В планировщике изменить время запроса к ЦБ, планировщик должен запускать скрипт каждый день в 23:30 например. ЦБ по xml запросу не отдаст последний курс, если курса по запрошенной дате нет.
|
laimas,
как так сделать одну строчку? $ 56.77 ▲ - с цветной стрелкой по курсу, зелёная, красная? |
Цитата:
/*правила для стрелки вверх*/ .rate-1:after { content: "▲"; color: #0f0; /*зеленый цвет*/ } /*правила для стрелки вниз*/ .rate-0:after { content: "▼"; color: #f00; /*красный цвет*/ } |
Статистика этого форума 172 сообщения и 922 просмотра
https://pp.userapi.com/c840127/v8401...2R6f6_ZAcM.jpg |
Это обязательно сделать - планировщик должен запускать скрипт каждый день в 23:30
|
Цитата:
а как тут, мне только одна строчка нужно, сегодняшнего курса? ![]() |
laimas,
Вот в пейнте нарисовал пример, как хотел https://pp.userapi.com/c840127/v8401...uH-YOKuqp4.jpg |
Цитата:
В файле current.php строку 6 кода (это строка if($xml = simplexml_load_file .....), заменить на эту if($xml = simplexml_load_file('http://www.cbr.ru/scripts/XML_dynamic.asp?date_req1='.date('d/m/Y', strtotime('-3 day')).'&date_req2='.date('d/m/Y', strtotime('-1 day')).'&VAL_NM_RQ=R01235')) { В current.json поместить это {"current":{"date":"11.2.2018","value":58.17,"rate ":1},"previous":{"date":"10.2.2018","value":57.67, "rate":1}} чтобы не ждать планировщика. |
|
laimas,
в первой строке нету стрелки так и должно? |
Цитата:
Цитата:
|
Цитата:
|
Цитата:
|
Цитата:
<style> /*общие правила для элементов отображающих курс*/ span[class|=rate] { display: block; text-align: center; padding: 3px 0; color: #000; font-weight: bold; } /*правила для знака доллара*/ span[class|=rate]:before { margin-right: 10px; content: "$"; } /*общие правила для стрелок*/ span[class|=rate]:after { margin-left: 10px; } /*правила для стрелки вверх*/ .rate-1:after { content: "▲"; color: #0f0; /*зеленый цвет*/ } /*правила для стрелки вниз*/ .rate-0:after { content: "▼"; color: #f00; /*красный цвет*/ } </style> <div id="usd" class=""> <span id="current" class="rate-0"></span> <span id="previous" class="rate-0"></span> </div> <script> $.getJSON("доменюру", function(data) { $.each(data, function(k, o) { $('#'+k).text(o.value).attr('class', function() { return this.className.replace(/\d/, o.rate) }) }) }); </script> |
Все на месте, и никуда не должна исчезать.
В current.php строка 6 изменена? 0 часов для планировщика указано? |
Цитата:
<? $dir = dirname(__FILE__); chdir($dir); libxml_use_internal_errors(); if($xml = simplexml_load_file('http://www.cbr.ru/scripts/XML_dynamic.asp?date_req1='.date('d/m/Y', strtotime('-3 day')).'&date_req2='.date('d/m/Y', strtotime('-1 day')).'&VAL_NM_RQ=R01235')) { $last = round((float)str_replace(',', '.', current($xml->Record[0]->Value)), 2); $usd_prev = round((float)str_replace(',', '.', current($xml->Record[1]->Value)), 2); $usd_curr = round((float)str_replace(',', '.', current($xml->Record[2]->Value)), 2); chmod($dir, 0700); file_put_contents('current.json', json_encode( array( 'current' => array( 'date' => date('j.n.Y'), 'value' => $usd_curr, 'rate' => intval($usd_curr > $usd_prev) ), 'previous' => array( 'date' => date('j.n.Y', strtotime('-1 day')), 'value' => $usd_prev, 'rate' => intval($usd_prev > $last) ) )) ); chmod($dir, 0700); } ?> и https://pp.userapi.com/c840423/v8404...A48nHNQzNk.jpg |
HTML с страницы вывода
![]() |
В строке 11, должно быть не chmod($dir, 0700);, а chmod($dir, 0777);, это во второй chmod($dir, 0700);
|
laimas,
поменял стрелка не появилась <? $dir = dirname(__FILE__); chdir($dir); libxml_use_internal_errors(); if($xml = simplexml_load_file('http://www.cbr.ru/scripts/XML_dynamic.asp?date_req1='.date('d/m/Y', strtotime('-3 day')).'&date_req2='.date('d/m/Y', strtotime('-1 day')).'&VAL_NM_RQ=R01235')) { $last = round((float)str_replace(',', '.', current($xml->Record[0]->Value)), 2); $usd_prev = round((float)str_replace(',', '.', current($xml->Record[1]->Value)), 2); $usd_curr = round((float)str_replace(',', '.', current($xml->Record[2]->Value)), 2); chmod($dir, 0777); file_put_contents('current.json', json_encode( array( 'current' => array( 'date' => date('j.n.Y'), 'value' => $usd_curr, 'rate' => intval($usd_curr > $usd_prev) ), 'previous' => array( 'date' => date('j.n.Y', strtotime('-1 day')), 'value' => $usd_prev, 'rate' => intval($usd_prev > $last) ) )) ); chmod($dir, 0700); } ?> |
К картинке стилей не привяжешь, здесь в примере это div class="ratehead".
. <style> .ratebox { width: 200px; } .ratebox span { display: block; text-align: center; padding: 3px 0; font-weight: bold; } .current:before, .previous:before { content: "$"; } /*правила для знака доллара*/ .ratebox span:before { margin-right: 10px; } /*общие правила для стрелок*/ .ratebox span:after { margin-left: 10px; } /*правила для стрелки вверх*/ .up:after { content: "▲"; color: #0f0; /*зеленый цвет*/ } /*правила для стрелки вниз*/ .down:after { content: "▼"; color: #f00; /*красный цвет*/ } .ratehead { background-color: #3CA0D9; } .ratehead * { color: #fff; } .ratehead *:after { color: #fff; /*белый цвет стрелки*/ } </style> <div class="ratehead"><span class="current"></span></div> <div class="ratebox"> <span class="current"></span> <span class="previous"></span> </div> <script> $.getJSON("http://domain.ru", function(data) { $.each(data, function(k, o) { $('.'+k).text(o.value).addClass(['down','up'][o.rate]) }) }); </script> |
Цитата:
|
laimas,
https://pp.userapi.com/c840631/v8406...rWkzdMhN0E.jpg всё сломалось. А как сделать курс текущий? |
|
Когда я захожу на доммен мне выводится типа json это будет всем доступно и все будут пользоватся?
|
Я не знаю чего вы там у себя творите, это сами разбирайте, а вот как все выглядит на локальном сервере, с указанной ранее версткой, стилями и js измененном.
|
Цитата:
Можно и в барузере запретить вывод json. |
Цитата:
а ещё стрелку можно в верхний блок сделать и фон прозрачный? 58.17 - стрелку динамики? |
Цитата:
|
Цитата:
|
Часовой пояс GMT +3, время: 06:36. |