Buongiorno,
partendo da un esempio che ho trovato in rete e che funziona, vorrei cercare di aggiungere dinamicamente ulteriori marcatori ad una mappa google. I 3 marcatori impostati direttamente in javascript vengono visualizzati senza problemi. Gli altri 2 provenienti da PHP, non vengono visualizzati. Tramite 'alert' ho verificato che le variabili arrivino correttamente alla funzione javascript, quindi il problema dovrebbe risiedere proprio all'interno di quest'ultima (fnc_add_marker_PHP):
codice:
<html><head>
<script src="https://maps.googleapis.com/maps/api/js?key=MyKEY&callback=myMap"></script>
</head>
<body>
<div id="maptest" style="width:100%;height:100%;"></div>
<script>
var styleArray = [{
featureType: "all",
stylers: [{ "saturation": 20 },{ "hue": "#103050" }]
}];
var mapOptions = {
scrollwheel: false,
zoom: 12,
center: new google.maps.LatLng(43.769562, 11.255814),
styles: styleArray
};
var map = new google.maps.Map(
document.getElementById('maptest'),
mapOptions
);
// markers
var marker1 = new google.maps.Marker({
map: map,
position: new google.maps.LatLng(43.769562, 11.265814)
});
var marker2 = new google.maps.Marker({
map: map,
position: new google.maps.LatLng(43.769662, 11.356814)
});
var marker3 = new google.maps.Marker({
map: map,
position: new google.maps.LatLng(43.799362, 11.283814)
});
function fnc_add_marker_PHP (pz, lat, lon) {
var pz = new google.maps.Marker({
map: map,
position: new google.maps.LatLng(lat, lon)
});
}
</script>
</body>
</html>
<?php
$array_PAZIENTI = array();
$array_PAZIENTI['UNO'] = [ 'lat' => '43.769462', 'lon' => '11.265514'];
$array_PAZIENTI['DUE'] = [ 'lat' => '43.769862', 'lon' => '11.266014'];
foreach ($array_PAZIENTI as $key => $value) {
$pz = $key;
$lat = $array_PAZIENTI[$key]['lat'];
$lon = $array_PAZIENTI[$key]['lon'];
echo "<script>";
echo "fnc_add_marker_PHP (\"".$pz."\", \"".$lat."\", \"".$lon."\");";
echo "</script>";
}
?>