Php 一个页面上有多个谷歌地图的问题

Php 一个页面上有多个谷歌地图的问题,php,mysql,google-maps,maps,smarty,Php,Mysql,Google Maps,Maps,Smarty,嗨,我在一个页面上显示多个谷歌地图时遇到问题 第一张地图显示正确,但第二张地图没有显示 我使用Smarty显示模板。结果来自数据库。有人能检查代码并帮助我显示多张地图吗 {foreach item=row from=$adress} <tr> <td> <script type="text/javascript">

嗨,我在一个页面上显示多个谷歌地图时遇到问题

第一张地图显示正确,但第二张地图没有显示

我使用Smarty显示模板。结果来自数据库。有人能检查代码并帮助我显示多张地图吗

{foreach item=row  from=$adress}
                <tr>
                  <td>
                    <script type="text/javascript">
                      function initialize() {
                        var position = new google.maps.LatLng({$row->lat}, {$row->longi});
                        var myOptions = {
                          zoom: 12,
                          center: position,
                          mapTypeId: google.maps.MapTypeId.ROADMAP
                        };
                        var map = new google.maps.Map(
                            document.getElementById("map_canvas{$row->site_id}"),
                            myOptions);

                        var marker = new google.maps.Marker({
                            position: position,
                            map: map,
                            title:"This is the place."
                        });  

                        var contentString = 'Hello <strong>World</strong>!';
                        var infowindow = new google.maps.InfoWindow({
                            content: contentString
                        });

                        google.maps.event.addListener(marker, 'click', function() {
                          infowindow.open(map,marker);
                        });

                      }

                    </script>
                  <div id="map_canvas{$row->site_id}" style="width:300px;height:200px;"></div>
{foreach item=row from=$address}
函数初始化(){
var position=new google.maps.LatLng({$row->lat},{$row->longi});
变量myOptions={
缩放:12,
中锋:位置,,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
var map=new google.maps.map(
document.getElementById(“map\u canvas{$row->site\u id}”),
肌肽);
var marker=new google.maps.marker({
职位:职位,,
地图:地图,
标题:“就是这个地方。”
});  
var contentString='HelloWorld!';
var infowindow=new google.maps.infowindow({
内容:contentString
});
google.maps.event.addListener(标记'click',函数(){
信息窗口。打开(地图、标记);
});
}

这是您的html代码:-

</head>
<body onload="initialize()">
<H1 align="center">Two Google maps side-by-side</h1>
<div id="map_canvas1" style="top: 10px; left: 25px; width:210px; height:220px; float: left"></div>
<div id="map_canvas2" style="top: 10px; left: 75px; width:210px; height:220px"></div>
</body>
</html>

<script>


    function initialize()
    {
        <?php 

    for($i=1; $i<=2; $i++){

    ?>

        var latlng<?php echo $i ?> = new google.maps.LatLng(18.520266,73.856406);

        var myOptions =
        {
            zoom: 15,
            center: latlng<?php echo $i; ?>,
            mapTypeId: google.maps.MapTypeId.ROADMAP
        };


        var map<?php echo $i; ?> = new google.maps.Map(document.getElementById("map_canvas<?php echo $i ?>"), myOptions);



        var myMarker<?php echo $i; ?> = new google.maps.Marker(
        {
            position: latlng<?php echo $i; ?>,
            map: map<?php echo $i; ?>,
            title:"Pune"
       });

    <?php } ?>

    }


    </script>

两个谷歌地图并排
函数初始化()
{
var latlng=新的google.maps.latlng(18.520266,73.856406);
变异性肌肽=
{
缩放:15,
中心:拉特林,
mapTypeId:google.maps.mapTypeId.ROADMAP
};
var map=new google.maps.map(document.getElementById(“map_canvas”),myOptions);
var myMarker=new google.maps.Marker(
{
位置:latlng,
地图:地图,
标题:“浦那”
});
}

我知道您正在使用不同的编程语言来定义代码。但我希望你能理解其中的逻辑

你能在没有程序{}等的情况下静态检查代码吗?这是什么意思?我的意思是复制粘贴两块代码,一块用于map_canvas1,另一块用于map_canvas2。。然后找出它的给出错误与否。示例代码:-不能有多个同名函数(每个映射都有一个
initialize
函数),我不明白该怎么做。我现在使用带标记的静态谷歌地图图像来显示