如何在javascript中使用php

时间:2015-08-28 17:54:58

标签: javascript php

我已经通过sql查询在php中创建了一个变量($latlon),如此......

// ...
if ($result->num_rows >0) {
    while ($row = $result->fetch_assoc()) {
        echo "id: " . $row["userid"] . latitude: . $row["latitude"] . 
        longitude: . $row["longitude"] ;

         $latlon = $row["latitude"] . "," . $row["longitude"];

现在我想使用变量$latlon$row["latitude"]& $row["longitude"]在一些javascript代码中显示一个看起来像这样的地图。理想情况下,我希望我的php变量在这里(51.508742,-0.120850),因为这些坐标会不断变化。

<script>
function initialize()
{
    var mapProp = {
        center: new google.maps.LatLng**(51.508742,-0.120850)**,
        zoom:7,
        mapTypeId: google.maps.MapTypeId.ROADMAP
    };
    var map = new google.maps.Map(document.getElementById("googleMap"),mapProp);
}

function loadScript()
{
    var script = document.createElement("script");
    script.type = "text/javascript";
    script.src = "http://maps.googleapis.com/maps/api/
    js?key=&sensor=false&callback=initialize";
    document.body.appendChild(script);
}
window.onload = loadScript;
</script>

任何帮助将不胜感激。谢谢

3 个答案:

答案 0 :(得分:3)

你应该在php标签内回显$ latlon变量。所以该行将如下:new google.maps.LatLng(<?php echo $latlon;?>)。我假设你在php $latlon变量中有js的正确语法。

请记住,这只有在您放置代码的php文件时才有效。

答案 1 :(得分:0)

假设您使用html渲染页面,您可以将该变量放在隐藏的输入元素中,稍后从javascript中检索它。

像这样:

&#13;
&#13;
<input id="latlon" type="hidden" name="name" "<?php echo htmlspecialchars($latlon); ?>" />
&#13;
&#13;
&#13;

答案 2 :(得分:0)

我建议你做这样的事情:

<input type="hidden" id="lat" value="<?php echo $lat; ?>">
<input type="hidden" id="long" value="<?php echo $long; ?>">

使用JS选择器获取这些值,如下所示:

var lat=document.getElementById('lat');
var long=document.getElementById('long');