如何将数据从 MySQL 传递到 Google 地图

How to pass data from MySQL to Google Maps

我对如何将数据从 PHP 传递到我的 google 地图 API 感到困惑。

<script>

  <?
        $dbFirst = new database;
        $dbFirst->query("SELECT getLatitude,getLongitude FROM t_report
                         WHERE phoneNumber='$idimei' AND tanggal BETWEEN '$tgl1 00:00:00' and '$tgl1 23:59:59' AND (km IS NOT NULL AND km !='') ORDER BY ID ASC LIMIT 1");  
        $rowFirst=$dbFirst->tampilkan();

        while ($rowFirst=$dbFirst->tampilkan()){
            $lat=$rowFirst['getLatitude'];
            $lon=$rowFirst['getLongtitude'];
        }
    ?>
    var marker;

    function initMap() {

        var mark1 = {lat:X, lng:Y};

        var map = new google.maps.Map(document.getElementById('map'), {
            center: mark1,
            zoom: 18

        });

        marker = new google.maps.Marker({
            position: mark1,
            animation: google.maps.Animation.DROP,
            map: map
        });
        marker.addListener('click', toggleBounce);
    }
    function toggleBounce() {
        if (marker.getAnimation() !== null) {
            marker.setAnimation(null);
        } else {
            marker.setAnimation(google.maps.Animation.BOUNCE);
        }
    }
  </script>

如何将 $lat$lon 放入我的 mark1 X 和 Y 变量?我对如何在 PHP 之外传递数据感到困惑。 感谢您的回答

要将变量 $lat$lon 从 PHP 传递到 XY in javascript 你可以这样做:

var marker;
var X ="<?php echo $lat; ?>";
var Y ="<?php echo $lon; ?>";

或更短:

var marker;
var X =<?$lat?>;
var Y =<?$lon?>;

可以使用下面的方法将PHP变量的数据传给JS 假设这是您从数据库查询数据并将其存储在变量 $lat$lon

中的地方
<?php
//data from DB
$lat = "xx.xx";
$lon = "xx.xx";
?>

<script>
// then echo it into the js
// and assign to a js variable
let lat = '<?php echo $lat ;?>';
let lon = '<?php echo $lon ;?>';
// then
 function initMap() {

        var mark1 = {lat:lat, lng:lon};

        var map = new google.maps.Map(document.getElementById('map'), {
            center: mark1,
            zoom: 18

        });

        marker = new google.maps.Marker({
            position: mark1,
            animation: google.maps.Animation.DROP,
            map: map
        });
        marker.addListener('click', toggleBounce);
    }

</script>```