gpt4 book ai didi

javascript - 如何使用 while 循环将 php 中的数据传输到 javascript

转载 作者:行者123 更新时间:2023-12-02 23:38:51 25 4
gpt4 key购买 nike

如何使用多个标记?此代码仅显示一个标记。

我知道我需要使用循环,但是如何使用?

此代码将带有来自 Google map 数据库的信息的标记放在 Google map 上

我的问题是,一旦您将标记放在屏幕上,数据库中的其他标记就不会出现。

<?php
$connectmaps=$db->prepare("select title,longt,latit,description from pages where onmap = 1");
$connectmaps->execute();
$loadmaps=$connectmaps->fetch(PDO::FETCH_ASSOC);

$loadmap_json = json_encode($loadmaps);
?>

<script>
jQuery(function ($) {
// Google Maps
var script = document.createElement('script');
script.src = "http://maps.googleapis.com/maps/api/js?sensor=false&callback=initialize&key=MY_GOOGLE_MAPS_API_KEY";
document.body.appendChild(script);
});
function initialize() {
var map;
var bounds = new google.maps.LatLngBounds();
var mapOptions = {
mapTypeId: 'roadmap'
};
// Sayfada Haritayı Göster
map = new google.maps.Map(document.getElementById("map_canvas"), mapOptions);
map.setTilt(45);


// Multiple Markers
var phpden = <?php echo $loadmap_json; ?>;
var longt= parseFloat(phpden.longt)
var title= phpden.title
var description = phpden.description
var boylam = parseFloat(phpden.latit)

var markers = [
[title, longt, latit],
];
// İnfo Windows
var infoWindowContent = [
['<div class="info_content">' + '<h3>' + title+ '</h3>' + '<p>' + description + '</p>' + '</div>' + ''],
];


// Show multiple markers
var infoWindow = new google.maps.InfoWindow(), marker, i;
// İşaretçi Dizisini Döngüye Sok ve Harita Üzerine Yerleştir
for (i = 0; i < markers.length; i++) {
var position = new google.maps.LatLng(markers[i][1], markers[i][2]);
bounds.extend(position);
marker = new google.maps.Marker({
position: position,
map: map,
title: markers[i][0]
});


google.maps.event.addListener(marker, 'click', (function (marker, i) {
return function () {
infoWindow.setContent(infoWindowContent[i][0]);
infoWindow.open(map, marker);
}
})(marker, i));
// Tüm İşaretçileri Otomatik Olarak Ekrana Sığdır
map.fitBounds(bounds);
}

最佳答案

fetch() 方法仅获取第一条记录。请改用 fetchAll() 方法。这将为您提供集合中每个记录的多维数组。

另请注意,如果您没有将任何变量传递到查询中,PDO 确实有一个 query() 方法;无需准备和执行。

<?php
$connectmaps = $db->query(
"SELECT title, longt, latit, description FROM pages WHERE onmap = 1"
);
$loadmaps = $connectmaps->fetchAll(\PDO::FETCH_ASSOC);
$loadmaps_json = json_encode($loadmaps);

关于javascript - 如何使用 while 循环将 php 中的数据传输到 javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56173083/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com