2012-05-17 30 views
2

我正在研究一個腳本,它將從我的MySQL數據庫表中提取一個變量,這是谷歌給我的例子。Google Maps API JavaScript將數據從MySQL表中拉入變量

var beaches = [ 
    ['Bondi Beach', -33.890542, 151.274856, 4], 
]; 

,現在這裏是我嘗試實現,

我與領域,ID表,海灘,龍,緯度

如何將我更換海灘變量從拉我的MySQL表,而不必進去,並手動添加沙灘到變量。這樣,當用戶通過我的表單向數據庫添加一個具有經度和緯度的海灘名稱時,它會自動在我的谷歌地圖上添加一個標記。

我實現與谷歌地圖API V3

https://developers.google.com/maps/documentation/javascript/overlays#ComplexIcons

即時猜測我去使用一些AJAX是ComplexIcon疊加?我從來沒有使用AJAX之前,所以如果這是這種情況,我想我更好地拉起我的AJAX外套:)

回答

4

Javascript在用戶的瀏覽器不能直接進入你的數據庫(這是好!),但它可以問你的數據服務器和AJAX可能是你想要的動態更新方式。谷歌有一篇文章:https://developers.google.com/maps/articles/phpsqlajax_v3

然而,當你發送頁面到瀏覽器時,你很可能只需要獲取標記數據,你可以通過在PHP或其他服務器端構建頁面語言,使用類似的技術從數據庫中獲取數據,並直接在頁面代碼中使用這些值。

你可能需要做兩件事,創建初始頁面的用戶獲取,並通過AJAX更新所以只是數據的變化,你不必刷新整個頁面。

[注意:您不必使用XML來異步傳輸數據,可以使用JSON格式,或者你可以編寫任何其他格式。但是,XML是容易的,有大量的例子。]

+0

您提供真正的我指出了正確的方向,以更好地理解什麼即時試圖完成以及如何完成它的鏈接。非常感謝你! –

0

是的,你有Ajax來做到這一點。 例如,我將使用jQuery

$.ajax({ 
    url: formSubmitUrl, 
    data: 'id=1&lat=23.444...', 
    type: 'GET', 
    success: function (data) 
    { 
     // data = response from the script 
     // if every thing is ok, I return the string 'OK' 
     if(data == 'OK') 
     { 
      var pMarker = new google.maps.Marker({ 
       position: new google.maps.LatLng(lat, lng), 
       map: map, 
       icon: yourMarkerimage 
      }); 
     } 
    } 
}); 

而這一切,從客戶端。 通過AJAX提交表單,然後將標記添加到地圖

相關問題