IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

APIs Google Discussion :

Ouvrir une infobulle depuis un lien [Google Maps]


Sujet :

APIs Google

  1. #1
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 35
    Points : 25
    Points
    25
    Par défaut Ouvrir une infobulle depuis un lien
    Bonjour à tous,


    Je m'intéresse aujourd'hui à l'API de google maps v3.

    Je l'utilise avec php et mysql pour géolocaliser mes clients depuis leur adresse (convertit en latitude et longitude)

    Je cherche à ouvrir une infobulle depuis le nom du client qui apparaitrais dans une liste à coté (générée depuis une boucle)



    J'ai donc recherché dans le fofo de developpez et j'ai rien trouvé qui se rapprocherais de mon sujet

    Voici le code à proprement parler:

    Page phpsqlajax_map_v4.php

    Javascript
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    70
    71
    72
    73
    74
    75
    76
    77
    <script type="text/javascript" src="http://maps.googleapis.com/maps/api/js"></script>
        <script type="text/javascript">
        //<![CDATA[
     
        var customIcons = {
    	  restaurant: {
            icon: 'http://labs.google.com/ridefinder/images/mm_20_blue.png'
          },
          bar: {
            icon: 'http://labs.google.com/ridefinder/images/mm_20_red.png'
          }
        };
     
        function load() {
          var map = new google.maps.Map(document.getElementById("map"), {
            center: new google.maps.LatLng(46.70, 2.00),
            zoom: 6,
            mapTypeId: 'roadmap'
          });
          var infoWindow = new google.maps.InfoWindow;
     
          // Change this depending on the name of your PHP file
          downloadUrl("phpsqlajax_genxml.php", function(data) {
            var xml = data.responseXML;
            var markers = xml.documentElement.getElementsByTagName("marker");
            for (var i = 0; i < markers.length; i++) {
              var name = markers[i].getAttribute("name");
              var address = markers[i].getAttribute("address");
              var type = markers[i].getAttribute("type");
    		  var nument = markers[i].getAttribute("nument");
              var point = new google.maps.LatLng(
                  parseFloat(markers[i].getAttribute("lat")),
                  parseFloat(markers[i].getAttribute("lng")));
              var html = "<b><a href='fiche_client.php?client=" + nument + "'>" + name + "</a></b><br/>" + [i] + " <br/>" + address;
              var icon = customIcons[type] || {};
              var marker = new google.maps.Marker({
                map: map,
                position: point,
                icon: icon.icon
              });
              bindInfoWindow(marker, map, infoWindow, html);
            }
          });
        }
     
        function bindInfoWindow(marker, map, infoWindow, html) {
          google.maps.event.addListener(marker, 'click', function() {
            infoWindow.setContent(html);
            infoWindow.open(map, marker);
          });
        }
     
        function downloadUrl(url, callback) {
          var request = window.ActiveXObject ?
              new ActiveXObject('Microsoft.XMLHTTP') :
              new XMLHttpRequest;
     
          request.onreadystatechange = function() {
            if (request.readyState == 4) {
              request.onreadystatechange = doNothing;
              callback(request, request.status);
            }
          };
     
          request.open('GET', url, true);
          request.send(null);
        }
     
        function doNothing() {}
     
        //]]>
     
      </script>
     
      <body onload="load()">
        <div id="map" style="width: 100%; height: 550px;display:block;"></div>
      </body>
    Page de boucle client
    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    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
    <div>
    	<? include('phpsqlajax_map_v4.php');?>
    </div>
    <div>
    <script>
    	$(".nomDeLaClasse").click(function(){
    	infoWindow.open(map, marker));
    	return false; /* permet de ne pas actualiser la page */
    	});
    </script>
    <?
    	$reponseENT = $bdd->query('
    	SELECT *
    	FROM client
    	WHERE adresse !=""
    	AND archive = "FAUX"
    	');
    	while($repE = $reponseENT->fetchObject())
    		{
    	?>	
    		<p><a class="nomDeLaClasse"><? echo $repE->Nom." ".$repE->dpt;?></a></p>
    	<?
    		}
    	?>
    </div>

    Seriez-vous en mesure de me donner une idée de la manière dont je dois m'y prendre ?

    Merci

  2. #2
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 122
    Points : 44 914
    Points
    44 914
    Par défaut
    Bonjour,
    un élément de réponse Interaction entre élément du DOM et Marker.

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 35
    Points : 25
    Points
    25
    Par défaut
    Bonjour,

    Merci pour votre aide, en effet, ceci est un bon éléments de réponse, toutefois, je n'arrive pas à accéder aus cript pour voir comment cela à été conçu.
    Aurais-je la vue qui baisse ?

  4. #4
    Modérateur

    Avatar de NoSmoking
    Homme Profil pro
    Inscrit en
    Janvier 2011
    Messages
    17 122
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Isère (Rhône Alpes)

    Informations forums :
    Inscription : Janvier 2011
    Messages : 17 122
    Points : 44 914
    Points
    44 914
    Par défaut
    je n'arrive pas à accéder aus cript pour voir comment cela à été conçu...
    clic droit -> afficher la source et trouve le lien vers le script.

    http://nosmoking.developpez.com/demo...raction_dom.js.

  5. #5
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Janvier 2010
    Messages
    35
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2010
    Messages : 35
    Points : 25
    Points
    25
    Par défaut
    Merci de ton aide, je vais y jeter un oeil !

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. ouvrir une appli depuis un lien ou un QRcode
    Par Gob59 dans le forum Android
    Réponses: 2
    Dernier message: 09/04/2014, 17h57
  2. Ouvrir une fenêtre depuis un formulaire
    Par Tellounet dans le forum Général JavaScript
    Réponses: 8
    Dernier message: 23/06/2008, 16h17
  3. Ouvrir une base depuis une base
    Par edhos dans le forum VBA Access
    Réponses: 1
    Dernier message: 31/01/2008, 07h06
  4. VBA : ouvrir une macro depuis une autre BDD
    Par crovette51101 dans le forum VBA Access
    Réponses: 2
    Dernier message: 11/05/2007, 08h09
  5. Ouvrir une form depuis une class
    Par totoche dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 01/09/2006, 11h13

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo