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>"; } ?>

Rispondi quotando