Я хочу сохранить координаты наложения полигонов google в оракуле и отобразить его на следующем сеансе. Существует код:использовать JSON.stringify и JSON.parse для хранения координат полигона в оракуле
function savePolygons(){
$.post('oracle_deletePolygons.php');
for (var i = 0; i < createdShapes.length; i++){
var nom_zone = escape(document.getElementById('nom_zone_' + createdShapes[i].id).value);
var couleur = escape(createdShapes[i].fillColor);
var code_cs = escape('711');
var shapeid_export = escape(createdShapes[i].id);
var geometry = createdShapes[i].getPath().getArray();
geometry = JSON.stringify(geometry);
var url1 = "oracle_savePolygons.php?nom_zone=" + nom_zone + "&couleur=" + couleur + "&code_cs=" + code_cs + "&shapeid_export=" + shapeid_export + "&geometry=" + geometry;
$.get(url1);
}
}
Я использую JSON.stringify преобразовать в текст массив пути многоугольника, возвращающее это:
[{"Ya":53.4357192066942,"Za":-75.82763671875},{"Ya":52.40241887397331,"Za":-77.3876953125},{"Ya":51.781435604431195,"Za":-74.0478515625}]
После использования PHP для синтаксического анализа данных таблицы оракула в Javascript вар, я использую JSON.parse преобразовать строку обратно в массив координат, как, что для того, чтобы восстановить многоугольники:
function addPolygons(shapeId_import, nom_zone, couleur, geometry){
geometry = JSON.parse(geometry);
var newPolygon = new google.maps.Polygon({
paths: geometry,
fillColor: couleur,
fillOpacity: 0.45,
strokeWeight: 1,
editable: false,
shapeid: shapeId_import,
map:map
});
к сожалению, он не работает. Я не могу восстановить многоугольник с этим новым массивом. Можете ли вы рассказать мне, как таким образом перестроить полигон?
И ваш вопрос .....? –
Вы уверены, что 'geometry' - это то, что вы думаете? Это строка, содержащая JSON? Какая ошибка? –
geometry - это var, в котором я храню координаты каждой вершины многоугольника с помощью этого метода: var geometry = createdShapes [i] .getPath(). GetArray(); –