2012-06-11 38 views
1

我想傳遞兩個變量(經度和緯度)的google.maps.StreetViewPanorama方法沒有成功google.maps。有可能做到這一點,否則我失敗了?傳遞PHP變量TH JavaScript方法

的變量通過URL傳遞:

http://mydomain/street.php?lat=41.653048&lon=-0.880677 

street.php的代碼是:

<?php 
$lat = $_GET["lat"]; 
$lon = $_GET["lon"]; 
?> 

<html> 
    <head> 

     <meta name='viewport' content='width=320,user-scalable=no'/> 

     <script src='http://maps.google.com/maps/api/js?sensor=false' type='text/javascript' > 
      jlat = <?php echo $lat; ?> 
      jlon = <?php echo $lon; ?> 
     </script> 

    </head> 

    <body onload="new google.maps.StreetViewPanorama(document.getElementById('p'), 
     {position:new google.maps.LatLng(jlat, jlon) 
     });" 

    style='padding:0px;margin:0px;'> 

    <div id='p' style='height:100%;width:100%;'></div> 

    </body> 
</html> 

我的我已經fefined新javescript可變

jlat = <?php echo $lat ?> 
jlon = <?php echo $lon ?> 

那隻母雞傳給google.maps.LatLng(jlat,jlon),但它不起作用。

對此有何想法?提前

+0

你說的「不工作」是什麼意思?究竟發生了什麼? <身體的onload =」:作爲一個方面說明,我可能會用'VAR LAT = ...'和'VAR LON = ...' –

+0

腳本,如果我不使用的變量,例如工程聲明這兩個變量新google.maps.StreetViewPanorama(的document.getElementById( 'p'), \t \t {位置:新google.maps.LatLng(41.653048,-0.880677) \t \t});」但不與變量jlat和jlon – doxsi

+0

你仍然沒有解釋你的意思是「不工作」會發生什麼?你得到什麼錯誤? –

回答

1

我不認爲你寫你的JavaScript的方式是去工作

謝謝。具體來說,如果您包含來自外部文件的JavaScript,則不應在其中包含更多代碼。試着改變你的代碼如下:

<?php 
$lat = $_GET["lat"]; 
$lon = $_GET["lon"]; 
?> 

<html> 
    <head> 
     <meta name='viewport' content='width=320,user-scalable=no'/> 

     <script type="text/javascript"> 
      var jlat = <?php echo $lat ?>; 
      var jlon = <?php echo $lon ?>; 
     </script> 

     <script src='http://maps.google.com/maps/api/js?sensor=false' type='text/javascript' > 
     </script> 
    </head> 

    <body onload="new google.maps.StreetViewPanorama(document.getElementById('p'), 
     {position:new google.maps.LatLng(jlat, jlon)});" style='padding:0px;margin:0px;'> 

    <div id='p' style='height:100%;width:100%;'></div> 

    </body> 
</html> 
+0

謝謝,它的工作原理! – doxsi

1

你沒忘了後$ LAT = $ _GET分號[「LAT」]

+0

+1發現它,但我不知道這是否是根本原因。 OP沒有真正說出他的意思是「不起作用」 –

+0

我很抱歉,但是「;」只是一個複製和粘貼錯誤。我只是編輯問題... – doxsi

1

現在添加分號在JavaScript中......

var jlat = <?php echo $lat ?>; 
var jlon = <?php echo $lon ?>; 
+0

謝謝你,這個poroblem正如Aleks G在javascript中所說的和分號! – doxsi