【问题标题】:Adding map markers with php, javascript and json使用 php、javascript 和 json 添加地图标记
【发布时间】:2015-11-10 08:47:30
【问题描述】:

尝试通过使用 php 检索标记,然后使用 json_encode() 从 mysql 添加标记,然后在 javascript 中使用结果。目前我的地图正在为我显示,但标记不是!

MarkersController.php - 从数据库中获取信息。

$list = array();

while ($row = mysqli_fetch_assoc($result)) {
    $list[] = array(
        array('lat' => $lat), 
        array('lng' => $lng));
}
echo json_encode($list);

登陆.html

<script type="text/javascript" src="js/jquery-1.11.2.js"></script>
                    <script type = "text/javascript"
                            src = "https://maps.googleapis.com/maps/api/js?
                            key=AIzaSyB76xBqfQdgOLV77VK3JZ09vWwk8brkMFs">
                    </script>
                    <script type="text/javascript">
                                var map = null;
                                function addMarker(lat, lng) {
                                var myLatLng = new google.maps.LatLng(lat, lng);
                                        marker = new google.maps.Marker({
                                        position: myLatLng,
                                                map: map
                                        });
                                }


                        function initialize() {
                        var mapOptions = {
                        center: {lat: 54.872128, lng: - 6.284874},
                                zoom: 13
                        };
  map = new google.maps.Map(document.getElementById('map-canvas'),
                                        mapOptions);

        $.getJSON('MarkersController.php', function(data){
                                $.each(data, function(lat, lng){
                                addMarker('lat', 'lng');
                                });
                                })
                            }
          google.maps.event.addDomListener(window, 'load', initialize);

                    </script>

尝试使用 MarkersController.php 中的数组来实现 addMarker() 函数。

【问题讨论】:

  • 他们如何“不工作”?您的控制台中是否出现任何错误?
  • 如果你显示你从 $.getJSON 收到的输出到你的 MarkersController.php 它将帮助我们知道问题出在哪里
  • @RowlandShaw 我的控制台没有错误,地图上也没有显示标记!

标签: javascript php mysql json google-maps-markers


【解决方案1】:

在您的回显之前尝试header('Content-Type: application/json');,否则您从服务器获得的结果将是纯文本。

【讨论】:

    猜你喜欢
    • 2014-08-24
    • 2015-04-23
    • 2013-02-02
    • 1970-01-01
    • 2015-12-23
    • 1970-01-01
    • 2018-04-02
    • 1970-01-01
    • 2012-02-10
    相关资源
    最近更新 更多