|
Цитата:
После этого запустить 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:34. |