Intereting Posts
Как сортировать пользовательские столбцы в виджетах GridView в Yii 2? Изображение отсутствует и требуется – WordPress AMP Structure не добавляет атрибут изображения Неразмерное переменное MySQL mysqli preg_replace с функцией замены Как добавить несколько значений в один параметр в форме html? Не удалось установить драйвер php mongodb на mac os 10.9 Автозагрузчик ZF2: используйте фабрику для базового класса на расширенных классах Почему Laravel Sessions терпит неудачу только в Safari и IE после переключения сервера? Объединяйте дни, где часы работы аналогичны Почему параметр привязки в предложении ORDER BY не упорядочивает результаты? PHP включает файл в динамическом URL-адресе Перенаправление с использованием PHP, а не перенаправление в Cpanel Ошибка Catch ErrorException, которая обертывает фатальную ошибку PHP URL-адрес перенаправления API-интерфейса API-интерфейса Google Analytics Почему PHP-скрипт не работает в веб-браузере?

Google maps marker загружает последнюю запись

Я пытаюсь добавить группу маркеров к картам google каждый с информационным окном. Я использую сочетание php и javascript, чтобы сделать это, php получает все записи из базы данных, а затем javascript добавляет все маркеры на карту с координатами, взятыми из базы данных.

Вот что я имею до сих пор:

<script type="text/javascript"> function initialize() { var latlng = new google.maps.LatLng(<?=$lat?>, <?=$long?>); var settings = { zoom: 12, center: latlng, mapTypeControl: false, navigationControl: true, navigationControlOptions: {style: google.maps.NavigationControlStyle.SMALL}, mapTypeId: google.maps.MapTypeId.ROADMAP}; var map = new google.maps.Map(document.getElementById("map_canvas"), settings); var postcodeLogo = new google.maps.MarkerImage('/images/postcode_marker.png', new google.maps.Size(32,37), new google.maps.Point(0,0), new google.maps.Point(15,34) ); var propertyLogo = new google.maps.MarkerImage('/images/property_marker.png', new google.maps.Size(32,37), new google.maps.Point(0,0), new google.maps.Point(15,34) ); var infowindow = new google.maps.InfoWindow(); <? foreach ($results as $grid_refs) { ?> var propPos = new google.maps.LatLng(<?=$grid_refs['grid_ref']?>); propMarker = new google.maps.Marker({ position: propPos, map: map, icon: propertyLogo, title:"<?=$grid_refs['sd_name']?>", zIndex: 3}); var contentString = '<div style="font-weight:bold;"><?=$grid_refs['sd_name']?></div><div><img src="www.imagelink.com/<?=$grid_refs['image_filename']?>"></div><div><a href="http://www.pagelink-<?=$grid_refs['property_id'];?>/" target="-blank">See full details</a></div>'; google.maps.event.addListener(propMarker, 'click', function() { infowindow.setContent(contentString); infowindow.open(map,this); }); <? } ?> var positionPos = new google.maps.LatLng(<?=$lat?>, <?=$long?>); var positionMarker = new google.maps.Marker({ position: positionPos, map: map, icon: postcodeLogo, title:"<?=$_GET['searchpostcode']?>", zIndex: 3}); } </script> 

PositionMarker – это место, где пользователь вводит почтовый индекс, который они хотят выполнить. Промаркер отмечает все места на карте, которые затем показывают.

В коде отображается вся информация, однако на карте открывается каждое информационное окно с последней извлеченной записью – где я хочу, чтобы она загружала информацию, относящуюся к этому маркеру.

Я рассмотрел этот вопрос:

Google Maps infoWindow загружает только последнюю запись на маркеры

который будет работать, но я не могу получить js for loop, работающий с php foreach, я пробовал его в php foreach и за его пределами.

Я ДУМАЮ, что мне нужно, это цикл forearch, чтобы изменить имя переменной и contentString каждый раз, когда он создает маркер, но я могу показаться, что это работает?

Любая помощь очень ценится!

Solutions Collecting From Web of "Google maps marker загружает последнюю запись"