Как правильно передать JSON из PHP в JS

Помогите пожалуйста, кто хорошо знает веб с такой проблемой. Есть JS код, который добавляет на карту метки. Данные меток в JSON формате. Вывожу данные в переменную JS из PHP - выдает ошибку JS кода "Uncaught TypeError: Cannot read property 'forEach' of undefined". При этом если эту же переменную отправляю в console.log, затем копирую из консоли данные вручную и подставляю в JS код, то все объекты нормально выводятся на карте. JS код:

    $.post('fullMap.php', {
        location: location,
        address: address,
        phone: phone,
        sor: sor,
        type: type,
        category: category,
        rooms: rooms,
        date1: date1,
        date2: date2,
        price1: price1,
        price2: price2,
        area1: area1,
        area2: area2,
        postfix: postfix,
        notfirstfloor: notfirstfloor,
        notlastfloor: notlastfloor,
        notanswer: notanswer,
        answer: answer,
        favorite: favorite,
        blacklist: blacklist,
        sold: sold,
        isagent: isagent
    }).done(function(data) {
        setMarker(data);            
    });
function setMarker(geojson) {
  console.log(geojson);
    // add markers to map
  geojson.features.forEach(function (marker) {
    // create a HTML element for each feature
    var el = document.createElement('div');
    el.className = 'marker';

    // make a marker for each feature and add it to the map
    new mapboxgl.Marker(el)
      .setLngLat(marker.geometry.coordinates)
      .setPopup(
        new mapboxgl.Popup({ offset: 25 }) // add popups
          .setHTML(
            '<h3>' +
              marker.properties.title +
              '</h3><p>' +
              marker.properties.description +
              '</p>'
          )
      )
      .addTo(map);
  });   
}

И соответственно вот пример JSON из консоли, который при ручной вставке отлично работает:

{'type': 'FeatureCollection','features': [{'type': 'Feature','geometry': {'type': 'Point','coordinates': [36.162632, 51.72834]},'properties': {'title': 'Комната 14 м² в 2-к., 3/9 эт.','description': 'Курская область, Курск, ул. Чернышевского, 17'}},{'type': 'Feature','geometry': {'type': 'Point','coordinates': [35.352839, 52.339242]},'properties': {'title': 'Аренда офисных и торговых помещений от 18 м² и выш','description': 'Курская область, Железногорск, ул. Гагарина, 28'}},]}

Как его правильно передать из PHP в переменную?


Ответы (0 шт):