Я создаю что-то с Google Maps и Instagram. Я пытаюсь отправить координаты фотографий Instagram из моего файла PHP в свой файл JavaScript с помощью AJAX. Я вообще понятия не имею, как справиться с этим на стороне JavaScript.Передача php-массива в javascript с помощью ajax
Это то, что мой файл index.php выглядит следующим образом:
<?php
$jsonText= file_get_contents("");
$instagram = json_decode($jsonText);
foreach ($instagram->data as $photo) {
$longitude = $photo->location->longitude;
$latitude = $photo->location->latitude;
$picture = $photo->images->thumbnail->url;
$results = array($latitude, $longitude, $picture);
echo json_encode($results, true);
}
?>
Мой файл JS выглядит следующим образом:
google.maps.event.addDomListener(window, 'load', initialize);
function initialize() {
var mapOptions = {
zoom: 5,
center: new google.maps.LatLng(45.525961, 15.255119)
};
var map = new google.maps.Map(document.getElementById('map-canvas'),
mapOptions);
$.ajax({
url: 'index.php',
dataType: 'json',
success: function(data) {
var location = new google.maps.LatLng();
var marker = new google.maps.Marker({
position: location,
map: map,
title:"Where the photo was taken.."
});
}
})
}
Просто поместите свое создание маркера в цикл и проведите через результаты json, создавая новые маркеры данных. –
@JoeSwindell. Но как использовать координаты, которые я отправляю? Я не могу просто «var location = new google.maps.LatLng (широта, долгота);» – Betul
Конечно, вы можете. Поместите его в цикл, и с каждым создаваемым им местоположением он подталкивает его к массиву. Тогда у вас будет массив местоположений карт. –