Как выести данные через JSON
Добрый день или вечер!
Как вывести данные через JSON вот с такого файла http://prisonvk.mikce.ru/mb.php?uid=1&format=json Выводить надо именно uid damage damage Как его вывести на экран не так {"response":{"time":1392734316,"pr_version":1,"use r_uid":"1","data":{"uid":"123456789","damage":"0", "message":"тест","delete":"1392822353","visits ":"23","last":"1392719472"}}} а нормально виде? заранее спасибо) |
var data = JSON.parse(response); alert(data.response.data.uid); alert(data.response.data.damage); |
спасибо))) буду что-то мудрить может выйдет
|
Вот такое сделал не робит((
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <script> $.ajax( { url: 'mb.php?uid=1&format=json', type: 'GET', var data = JSON.parse(response); alert(data.response.data.uid); alert(data.response.data.damage); } } ) </script> |
Тянуть либу на 10000 строк ради одной функции - ну это маразм какой-то...
function getJSON(url, callback) { var request = new XMLHttpRequest(); request.open('GET', url); request.onreadystatechange = function() { if (this.readyState != 4) return; var response = JSON.parse(this.responseText); callback(response); } request.send(null); } getJSON('mb.php?uid=1&format=json', function(response){ alert(data.response.data.uid); alert(data.response.data.damage); }); |
спасибо) ну что-то не работает(((
Uncaught ReferenceError: data is not defined tgh.php:16 (anonymous function) tgh.php:16 request.onreadystatechange |
Цитата:
Там должно быть response.response.data.uid |
да, так и есть только начал изучать php немного знаю, оно не сложно а вот JS для меня сложное(((
|
спс работает щас напишу чтоб на монитор выводило)
|
а то воно выбивает окно типо потверждения)
|
Вобще, вместо GET лучше POST, а то в каких-то браузерах запрос может кэшироваться.
Или выставь запрет кэширования на сервере через заголовки. Даже не "или", а это прям обязательно нужно сделать, если твои данные не должны кэшироваться. |
В маразме на 1000 строк может быть предусмотрено обслуживание заголовков через status. Без этого не поймешь что пришло - ок или идитена. При условии, конечно, что скрипт выдает адекватные заголовки, а не умалчивает, на что сервер бодро рапортует: 200 ок, 200 ок, 200 ок.
|
Кириллица в заголовках канает как и ожидалось по урлам.
php: header('HTTP/1.0 200 '.urlencode('Получено')); js: console.log(decodeURI(link.statusText)); Результат: GET http://тутсайт/ [HTTP/1.0 200 %D0%9F%D0%BE%D0%BB%D1%83%D1%87%D0%B5%D0%BD%D0%BE 15ms] 20:05:20.430 "Получено" Интересно, а какова максимальная длина reason-phrase? Может и никакого джисона не надо - вали все в хедер и готово. |
Цитата:
|
тебе спасибо большое помог))) там у меня была тема огибка JS ошибку нашел просто забыл добавить свой домен в manifest.json и оно такое выдавало)
|
Однако пишут что православно заголовок надо кодировать типа через такую фичу на php конкретно:
mb_encode_mimeheader() Это я по интуиции из RFC 2047 уловил. Но если напрямую вывести через алерт, получается то, что получается: =?UTF-8?B?0KLRgNC10LHRg9C10YLRgdGPINCw0LLRgtC+0YDQuNC30L DRhtC40Y8=?= Кто сам отправлял имейлы с сервера - видел такую шнягу. В бнопне написано: Требуется авторизация. Кодировка UTF-8, Binary. Ну вот, а перевести на русский обратно можно средствами ява-скрипт? Через url-кодирование работает четко (кстати надо rawurlencode применять иначе пробелы+станут+плюсами), но RFC жжот! |
Вот это я баран(((
Как тут вывести данные что-то я не пойму я уже понял как их получать))) Ну не пойму как их вывести на экран вот код <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script> <script> $.getJSON('http://prisonvk.mikce.ru/prisonvk/stat.php?method=piar&uid=100&format=json&browser=c hrome&version=2011', function(response){ alert(response.response.data.uid); alert(response.response.data.damage); }); </script> |
В окно браузера? Там же есть какая-то разметка - туда. Или как там document.write(some);
|
Типичнее некуда
Где-то на странице... <span id="data_uid"></span> в функции на событии ответа сервера document.getElementById('data_uid').textContent = responce.response.data.uid |
По заголовкам оффтоп продолжу. Оказывается требуется аналог функции imap_utf8 которая делает Converts MIME-encoded text to UTF-8 ... are described in » RFC2047 and » RFC2044 respectively.
|
Я то в это уже разобрался))) а как установить в ссылку напимер
<a href="vk.com/id как вывести ИД сюда" target="_blank" style="color: #FF0000;">Тут я понял как делать)</a> |
Всем кто помог большое спасибо все сделал))) Большое спасибо еще раз)
|
в href добавить, натурально
a.href+=response.id;// или как там сперва найти а как елемент, конечно. |
Часовой пояс GMT +3, время: 01:36. |