Клуб API Карт

Загрузка меток через ajax из php

wiki@svrt.ru
18 февраля 2015, 11:07

Загружаю метки методом $.ajax({url: "out_3.php"....

Когда прописывал путь к json-файлу - всё было хорошо.

Сделал в php формирование json для одной метки - тоже получилось, а для двух меток - не получается. Где ошибка?
<?php
$s1='{"type": "Feature", "id":1, "geometry": {"type": "Point", "coordinates": [55, 38]}, "properties": {"balloonContent": "Russia", "clusterCaption": "None", "hintContent": "Russia"}},';
$s2='{"type": "Feature", "id":2, "geometry": {"type": "Point", "coordinates": [57, 48]}, "properties": {"balloonContent": "Russia", "clusterCaption": "None", "hintContent": "Russia"}}';
$s3=$s1.$s2;
echo($s3);
?>

Что не так? Одна выводится, а две нет.

Позже, будет, конечно json_encode, но пока хочу так научиться формировать для ajax массив из нескольких меток.

5 комментариев
Подписаться на комментарии к посту
Ну так массив и формируйте: '[' . $s1 . $s2 . ']'
А вообще так делать, конечно, не надо. json_encode для того и придуман, чтобы таких ошибок не делать.

Спасибо! Получилось.
Теерь займусь вытягиванием 2000 меток из базы, загрузкой в массив и json_encode. Иду от простого к сложному.

А как закодировать координаты в json_encode ?

Я пытаюсь так:

$json = array(type=>'Feature',id=>1,geometry=>array(type=>'Point',coordinates=>[55, 38]),
properties=>array(balloonContent=>'Russia',clusterCaption=>'None',hintContent=>'Russia'));
echo json_encode($json);
Что-то не так с координатами.
Подскажите, пожалуйста, как правильно?

coordinates => array(55, 38)

Большое спасибо!