2013-09-22 135 views
0

我有一個緯度和DB特定用戶的經度谷歌地圖的位置..我通過使用jquery獲取值..這裏是我在做什麼動態填充從數據庫

var auto_refresh = setInterval(
     function() 
     { 
      $.get('http://localhost/Location/locate', function(data){ 

      $('.latitude').html(data.lat); 
      $('.longitude').html(data.long); 


      }, 'json'); 



     }, 1000); 

當我越來越從PHP位置我正在做的事情這

'localize' => false, 
    'latitude' => $latitude, 
    'longitude' => $longitude, 
    'address' => $address, 
    'marker' => true, 

我這樣做,但給我的語法錯誤

 'latitude' => ?><div class = 'latitude'></div><?php , 
    'longitude' => ?><div class = 'longitude'></div><?php , 

以及我想問的另一件事是,這是獲取沒有頁面刷新的位置的最佳方法..或者還有別的東西。

+0

提到,您使用的https://github.com/marcferna/CakePHP-GoogleMapHelper - 這裏的人們不會知道,否則,他們不會能夠以幫助您 –

回答

0

一對夫婦的問題:試試這個

  1. 要分配<div class = 'latitude'></div><div class = 'longitude'></div>的緯度和經度時,它的 期待只是號碼,以便永遠不會工作。

  2. PHP是服務器端,Javascript在客戶端得到執行,所以分配永遠不會工作,因爲PHP已經被執行。查看更多關於這個問題了:How to assign the javascript variable value to php variable

解決方案

根據您提供的代碼...的解決方案可能是使用谷歌地圖API的JavaScript直接更新的位置圖,來自服務器: setCenter(經緯度:經緯度)

var auto_refresh = setInterval(function() { 
    $.get('http://localhost/Location/locate', function(data){ 
    # Get the map instance and modify the center 
    # map_canvas is the default variable name that contains the Google Map 
    map_canvas.setCenter(new google.maps.LatLng(data.lat, data.long)); 
    }, 'json'); 
}, 1000); 
+0

謝謝你爲您的答案...但錯誤是在控制檯上說,地圖未定義 – mynameisbutt

+0

你能告訴我如何得到地圖實例... – mynameisbutt

+0

默認是'map_canvas',所以如果你沒有改變它,應該與此一起工作。 –

0

我不認爲這是允許在PHP中,關閉和打開PHP內聯數組分配。在你對PHP的通用代碼和有關使用https://github.com/marcferna/CakePHP-GoogleMapHelper

'latitude' => '<div class ="latitude"></div>', 
'longitude' => '<div class ="longitude"></div>', 
+0

不工作,如果我硬編碼它..它仍然沒有工作..我的意思是我嘗試這'緯度'=>'

234324234
', '經度'=>'
23432423
',.. mapdidnt顯示 – mynameisbutt