Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Интернет » Web-программирование » JSON

Модерирует : Cheery

 Версия для печати • ПодписатьсяДобавить в закладки

Открыть новую тему     Написать ответ в эту тему

koreets2011



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Вечер добрый!!!  
Я помню, что мне уже объясняли на счет JSON но не могу я въехать.

Код:
 
$res = mysqli_query($con,"SELECT * FROM `POI` WHERE city='$city' AND type='$typePOI'");
while($row = mysqli_fetch_object($res)) {
  $result[] = array($row);
}
echo json_encode($result);
 

 
получаю массив
[[{"ID":"1","type":"shop","city":"346200"}],[{"ID":"2","type":"shop","city":"346200"}]]
 
затем в js

Код:
 
$.each(data, function(key, val){
   alert(val.ID)
});
 

 
Получаю undefined

Всего записей: 354 | Зарегистр. 13-10-2011 | Отправлено: 21:15 14-05-2014
SvSerg7

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
alert(val[0].ID);
 
У тебя пришёл массив [] в котором содержится ещё 2 массива [ [] , [] ]  
в каждом лежит по одному объекту массив[ массив0[ {} ], массив1 [ {} ] ]
методом each ты проходишь по массиву и каждый val в свою очередь является тоже массивом
В общем запись [] эквивалентна как в PHP записи array() .
 
val это массив и в нём лежит один объект {} значит индекс этого объекта 0
получается чтобы получить ID надо val[0].ID .

Всего записей: 9 | Зарегистр. 13-05-2014 | Отправлено: 09:15 15-05-2014 | Исправлено: SvSerg7, 09:23 15-05-2014
koreets2011



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ok. Я понял. Спасибо.
Я пытаюсь добавить маркер на карту, координаты маркеров беру из бд аяксом
PHP

Код:
 
while($row = mysqli_fetch_array($res)) {
$result[] = array(
   'fullname' => $row['fullname'],
   'lat' => $row['lat'],
   'lon' => $row['lon']);
}
echo json_encode($result);
 

 
получаю массив [{"lat":"49.036474","lon":"41.018246"}],[{"lat":"49.036474","lon":"41.018246"}], и.т.д
 
Теперь  
JQery

Код:
 
$.each(data, function(key, val){
addMarkerToContainer(container, val.lat, val.lon);
});
 
function addMarkerToContainer(container, lat, lon, html) {
var coordinate = new nokia.maps.geo.Coordinate(lat, lon);
var marker = new nokia.maps.map.Marker(coordinate);
container.objects.add(marker);
}
 

 
Где ошибка не пойму

Всего записей: 354 | Зарегистр. 13-10-2011 | Отправлено: 12:02 15-05-2014
SvSerg7

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Ты не внимательно прочитал моё сообщение
 
Вот так должно работать
$.each(data, function(key, val){  
    addMarkerToContainer(container, val[0].lat, val[0].lon);  
});

Всего записей: 9 | Зарегистр. 13-05-2014 | Отправлено: 12:43 15-05-2014
koreets2011



Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Спасибо, разобрался...
Там в API кажут через XML лучше юзать, так что заюзал через XML.  
Эх плохо, что никто на форуме не юзал "Here maps (nokia maps)" инфы очень мало.  
Теперь врубиться не могу как маркеры с карты убрать которые в контейнере???

Всего записей: 354 | Зарегистр. 13-10-2011 | Отправлено: 16:55 15-05-2014
vs6262



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
https://developer.ebay.com/Devzone/post-order/post-order_v2_return_search__get.html#Samples
как удобно к примеру с JavaScript считать с JSON  нужный параметр ?
на примере с JavaScript
 
спасибо
 
Добавлено:
https://stackoverflow.com/questions/4935632/parse-json-in-javascript
https://www.w3schools.com/js/js_json_parse.asp
 
вроде бы нашел, если правмльно

Всего записей: 1484 | Зарегистр. 25-02-2013 | Отправлено: 04:56 02-06-2018
Mavrikii

Gold Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
vs6262

Цитата:
на примере с JavaScript

вам не нужно это делать из браузера. в случае php - curl запрос, далее json_decode
и хватит прыгать по темам, как блоха...
и внятно формулируйте вопросы, иначе отбивает всякое желание что то писать в ответ

Всего записей: 6141 | Зарегистр. 20-09-2014 | Отправлено: 08:41 02-06-2018
Открыть новую тему     Написать ответ в эту тему

Компьютерный форум Ru.Board » Интернет » Web-программирование » JSON

Имя:
Пароль:
Сообщение

Для вставки имени, кликните на нем.

Опции сообщенияДобавить свою подпись
Подписаться на получение ответов по e-mail
Добавить тему в личные закладки
Разрешить смайлики?
Запретить коды


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.Board
© Ru.Board 2000-2018

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru