|
Какая ошибка вывода в Json?
Вывожу данные статистики:
PHP
<?PHP
$i = parse_ini_string(file_get_contents('http://counter.yadro.ru/values?site=devaka.ru'));
file_put_contents('st.json',json_encode($i));
?>
JSON
{"LI_site":"devaka.ru","LI_month_hit":"109891","LI_month_vis":"49790","LI_week_hit":"26620","LI_week_vis":"14228","LI_day_hit":"5207","LI_day_vis":"3393","LI_today_hit":"335","LI_today_vis":"232","LI_online_hit":"11","LI_online_vis":"6"}
HTML
<div class="lives"></div>
<script>
$.getJSON(".s08.test-hf.su/st.json", function(data) {
$('.lives').html(LI_site);
});
</script>
Подскажите что тут неверно? Почему не работает? |
Цитата:
file_put_contents('st.json',json_encode($i)); - это зачем? $.getJSON должен обращаться к файлу сценария, который делает запрос к другому домену и сразу возвращает нужное:
<?
if($f = file_get_contents('http://counter.yadro.ru/values?site=devaka.ru')) {
exit(json_encode(parse_ini_string($f)));
} else exit(json_encode(['error'=>'Text error.']));
|
laimas,
На самом сайте у меня нету PHP и нужно через json выводить со стороннего хостинга. Добавил ваш код в php? а дальше что делать я в js и php не особо разбираюсь. Подскажите пожалуйста? |
Ничего не делать, изменить url запроса в $.getJSON.
|
laimas,
Подскажите как игде изменить в js или php я написал так и неработает
<div class="lives"></div>
<script>
$.getJSON("http://h116641.s08.test-hf.su/st.php", function(data) {
$('.lives').html(data.LI_site);
});
</script>
|
Если http://h116641.s08.test-hf.su/st.php, это файл выполняющий указанный код, то все должно работать. Ошибки могут быть только на клиенте.
PS. Конечно, если это запрашивает также домен h116641.s08.test-hf.su. В противном случае нужно разрешение, перечитывайте тему о курсах валют, так об этом говорилось - о заголовках, которые должен отдавать домен h116641.s08.test-hf.su. |
laimas,
У меня сайт на юкоз там нету php, как можно перевести php в json и оттуда через js вывести данные в div? |
Читайте постскриптум выше.
|
laimas,
В этом домене на эти файлы ещё не ставил ограничения как с курсом Я всю ночь читал и уже забыл, подскажите? Как вывести? Почему я делал через json? Цитата:
Про заголовки, есть такой фаил index.php
<?php
header('Access-Control-Allow-Origin: Мой сайт');
header('Vary: Origin');
header('Access-Control-Allow-Methods: GET');
header('Content-type: application/json; charset=utf-8');
exit(file_get_contents('current/current.json'));
?>
|
Если домен h116641.s08.test-hf.su отдает и курсы валют и прочую информацию, то разрешение для домена ее запрашивающую нужно поместить в файл .htaccess, который размещен в корне документов на домене h116641.s08.test-hf.su. Эти строки нужно поместить в этот файл:
Header add Access-Control-Allow-Origin "домен вашего сайта" Header add Vary "Origin" Header add Access-Control-Allow-Headers "origin, x-requested-with, content-type" Header add Access-Control-Allow-Methods "GET, POST" Из index.php нужно удалить передачу этих заголовков, то есть в нем должно быть:
<?php
header('Content-type: application/json; charset=utf-8');
exit(file_get_contents('current/current.json'));
?>
Передавать заголовок header('Content-type: application/json; charset=utf-8'); должен и файл отдающий другую информацию в формате JSON. |
| Часовой пояс GMT +3, время: 20:22. |
|