1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69
|
function initialiser() {
var tMarker = [
<?php
$tab = dest::All_dest();
for($i=0;$i<count($tab);$i++){
$res=$tab[$i];
echo ' { \'lat\' : "'.$res['lat'].'", \'lon\' : "'.$res['lng'].'", \'title\' : "'.$res['adresse'].'", \'info\' : "'.$res['description_concert'].'" }, ';
}
?>
];
/* Déclaration de l'objet qui définira les limites de la map */
var bounds = new google.maps.LatLngBounds();
/* Déclaration et remplissage du tableau qui contiendra nos points, objets LatLng. */
var myPoints = [];
<?php
$tab = concert::Id_Concert();
for($i=0;$i<count($tab);$i++){
$res=$tab[$i];
echo ' myPoints.push( new google.maps.LatLng("'.$res['lat'].'", "'.$res['lng'].'")); ';
}
?>
var oMap, oMarker, oInfo;
var i, nb = tMarker.length;
// création de la carte
oMap = new google.maps.Map(document.getElementById("carte"),{
'zoom' : 6,
'center' : new google.maps.LatLng( 46.80, 1.75),
'mapTypeId' : google.maps.MapTypeId.ROADMAP
});
// création infobulle
oInfo = new google.maps.InfoWindow();
// création des markers
for( i = 0; i < nb; i++){
bounds.extend(myPoints[i]);
// création marker
oMarker = new google.maps.Marker({
'numero' : i, // ici on sauve la valeur de i
'position' : new google.maps.LatLng( tMarker[i].lat, tMarker[i].lon),
'map' : oMap,
'title' : tMarker[i].title
});
// événement clic sur le marker
google.maps.event.addListener(oMarker, 'click', function() {
// affectation du contenu en utilisant this.numero
oInfo.setContent( tMarker[this.numero].info);
// affichage InfoWindow
oInfo.open( this.getMap(), this);
});
}
oMap.fitBounds(bounds);
} |
Partager