2016-06-14 13 views
-1

マップに複数のアドレスを表示しようとしていますが、データベースから取得された最初のアドレスだけが表示されます。これはコードです:Googleマップ上に複数のマーカー

<?php if($places) { foreach 
    ($places->result_array() as $place) { ?> 

    if (GBrowserIsCompatible()) { 



     var geocoder = new GClientGeocoder(); 
     geocoder.getLocations("'<?php echo $place['number']?>','<?php echo $place['street']?>', '<?php echo $place['city']?>' ,'<?php echo $place['country']?>'", function (locations) {   
      if (locations.Placemark) 
      { 
      var north = locations.Placemark[0].ExtendedData.LatLonBox.north; 
      var south = locations.Placemark[0].ExtendedData.LatLonBox.south; 
      var east = locations.Placemark[0].ExtendedData.LatLonBox.east; 
      var west = locations.Placemark[0].ExtendedData.LatLonBox.west; 

      var bounds = new GLatLngBounds(new GLatLng(south, west), 
              new GLatLng(north, east)); 

      var map = new GMap2(document.getElementById("map_canvas")); 

      map.setCenter(bounds.getCenter(), map.getBoundsZoomLevel(bounds)); 
      map.addOverlay(new GMarker(bounds.getCenter())); 
      } 
     }); 
    } <?php }}?> 

同じマップに複数のマーカーを表示するにはどうすればよいですか?

答えて

0

あなたの問題は、あなたが(前にそれを置く)ループのvar map = new GMap2(document.getElementById("map_canvas"));外を移動する必要があり、それが今のマップはもう表示されません

+0

を動作するはずですすべての反復

に新しいマップのインスタンスを作成することです.. – rooger

+0

ところで、なぜあなたはそのような古いAPIを使用していますか? v3は使用するのがはるかに簡単です – pwolaq

+0

良いideea。どうもありがとう !私はそれをやった! :) – rooger

関連する問題