Probleme avec google map api

raphs43 Messages postés 3 Date d'inscription lundi 4 décembre 2006 Statut Membre Dernière intervention 27 décembre 2006 - 27 déc. 2006 à 13:28
dante20007 Messages postés 61 Date d'inscription mercredi 25 avril 2007 Statut Membre Dernière intervention 27 avril 2009 - 21 mars 2008 à 21:18
bonjour 
voila mon probleme je veux afficher plusieur point sur une carte  en fonctions des coordonnées  (lat, lng)
ces coordonnées sont dans une base de donnée mysql
le probleme est que lorsque j'affiche ma carte  j'obtient uniquement le dernier point  de ma base de donnée alors que je voudrai que tout les point soit afficher

voila mon code
<?php
         mysql_connect("", "", "");
          mysql_select_db("");
   
    //on recupere la latitude longitude nom de la structure     
          $reponse = mysql_query("SELECT Latitude,Longitude FROM T_Gps")
    
            while ($donnees = mysql_fetch_array($reponse)){
   

?>
 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
    <title>carte d'essai</title>
    <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key="
      type="text/javascript"></script>
    <script type="text/javascript">

    //<![CDATA[
     function load() {
      if (GBrowserIsCompatible()) {
         
          function createMarker(point, number) {
                  var marker = new GMarker(point,icon);
                  GEvent.addListener(marker, "click", function() {
                  marker.openInfoWindowTabsHtml(infoTabs);             
                  });
                   return marker;
            }
            var infoTabs = [
             new GInfoWindowTab("  info1", "  "),
              new GInfoWindowTab(" info2", "  ")
            ];

     //création d'une carte nommé "map"
            var map = new GMap2(document.getElementById("map"));
                        GEvent.addListener(map, "moveend", function() {
        
            var center = map.getCenter();
                });
        
            map.addControl(new GSmallMapControl());
         
            map.addControl(new GMapTypeControl());
       
            
            map.setCenter(new GLatLng(45.44 , 4.395), 8);
                 
           
            var icon = new GIcon();
       
            icon.image = "http://images.google.fr/images?q=tbn:gS51abIJ6eysoM:http://rgfrance0.tripod.com/sitebuildercontent/sitebuilderpictures/flag.jpg";
       
            icon.shadow = "http://labs.google.com/ridefinder/images/mm_20_shadow.png";
      
            icon.iconSize = new GSize(23, 23);
            icon.shadowSize = new GSize(22, 20);
            icon.iconAnchor = new GPoint(6, 20);
            icon.infoWindowAnchor = new GPoint(5, 1);             
                
             
        
            var point = new GLatLng('<?php echo $donnees['Latitude']; ?>','<?php echo $donnees['Longitude'] ; ?>')
             map.addOverlay(createMarker(point ,1));
             marker.openInfoWindowTabsHtml(infoTabs);
           
      }
    }
   
    //]]>
    </script>
<?php
        mysql_close()    ;
       
            }
    ?>    
  </head>
 
   

  
 
</html>

voila  merci d'avance pour vos reponse

7 réponses

cs_mfaraday Messages postés 144 Date d'inscription vendredi 18 avril 2003 Statut Membre Dernière intervention 4 janvier 2010
27 déc. 2006 à 13:42
Salut....

Je ne pense pas me tromper en te disant qu'en faisant un while puis en mettant le texte de ta page, tu vas générer autant de "pages" que tu as d'enregistrements...

Parceque :

while($donnees = mysql_fetch_...(...))
    {
?>
<html>

code page

</html>
<?php

}

?>

fais plutot un <html> .... <?php while... ?> </html>

ça marchera surement plus

Flo
0
cs_mfaraday Messages postés 144 Date d'inscription vendredi 18 avril 2003 Statut Membre Dernière intervention 4 janvier 2010
27 déc. 2006 à 13:43
Je me rends comptes que je n'ai pas été clair : ton while est mal placé dans le code de ta page...

Je développe mon explication tout à l'heure.

@ +

Flo
0
raphs43 Messages postés 3 Date d'inscription lundi 4 décembre 2006 Statut Membre Dernière intervention 27 décembre 2006
27 déc. 2006 à 16:26
merci pour ta reponse mfaraday
mais meme en  mettant <?php ...  ?> dans le <html> ...  </html>  ca  marche pas
toujour le meme resultat  :S
0
amezghal Messages postés 385 Date d'inscription lundi 27 février 2006 Statut Membre Dernière intervention 21 août 2015 5
27 déc. 2006 à 20:03
ton code si le code javascript est correct va générer plusieurs pages html,impossible, d'arriver à  ton but
expliquation
comme c'est un boucle donc
donc les premieurs valeurs vont générer une page html, contenant la premiere point, le boucle va passé a la 2eme valeur
donc il va generer une autre page cette fois si,la 2eme point qui va s'afficher
et ainsi de suite,comme sa c normal d(avoir que lka derniere valeur
bonne prog
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
amezghal Messages postés 385 Date d'inscription lundi 27 février 2006 Statut Membre Dernière intervention 21 août 2015 5
27 déc. 2006 à 20:07
testé ça
<?php
         mysql_connect("", "", "");
          mysql_select_db("");
  
    //on recupere la latitude longitude nom de la structure    
          $reponse = mysql_query("SELECT Latitude,Longitude FROM T_Gps")
    ?>
 

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="content-type" content="text/html; charset=utf-8"/>
    <title>carte d'essai</title>
    <script src="http://maps.google.com/maps?file=api&amp;v=2&amp;key="
      type="text/javascript"></script>
    <script type="text/javascript">

    //<![CDATA[
     function load() {
      if (GBrowserIsCompatible()) {
        
          function createMarker(point, number) {
                  var marker = new GMarker(point,icon);
                  GEvent.addListener(marker, "click", function() {
                  marker.openInfoWindowTabsHtml(infoTabs);            
                  });
                   return marker;
            }
            var infoTabs = [
             new GInfoWindowTab("  info1", "  "),
              new GInfoWindowTab(" info2", "  ")
            ];

     //création d'une carte nommé "map"
            var map = new GMap2(document.getElementById("map"));
                        GEvent.addListener(map, "moveend", function() {
       
            var center = map.getCenter();
                });
       
            map.addControl(new GSmallMapControl());
        
            map.addControl(new GMapTypeControl());
      
           
            map.setCenter(new GLatLng(45.44 , 4.395), 8);
                
          
            var icon = new GIcon();
      
            icon.image = "http://images.google.fr/images?q=tbn:gS51abIJ6eysoM:http://rgfrance0.tripod.com/sitebuildercontent/sitebuilderpictures/flag.jpg";
      
            icon.shadow = "http://labs.google.com/ridefinder/images/mm_20_shadow.png";
     
            icon.iconSize = new GSize(23, 23);
            icon.shadowSize = new GSize(22, 20);
            icon.iconAnchor = new GPoint(6, 20);
            icon.infoWindowAnchor = new GPoint(5, 1);            
               
            
        <?php while ($donnees = mysql_fetch_array($reponse)){?>
            var point = new GLatLng('<?php echo $donnees['Latitude']; ?>','<?php echo $donnees['Longitude'] ; ?>')
             map.addOverlay(createMarker(point ,1));
             marker.openInfoWindowTabsHtml(infoTabs);
          
      }
    }
  
</script>
<?php
mysql_close()    ;
       }
    ?>   
  </head>
 
   

 
 
</html>
0
raphs43 Messages postés 3 Date d'inscription lundi 4 décembre 2006 Statut Membre Dernière intervention 27 décembre 2006
27 déc. 2006 à 21:38
je te remercie de ta reponse 
ca marche merci beaucoup  
0
dante20007 Messages postés 61 Date d'inscription mercredi 25 avril 2007 Statut Membre Dernière intervention 27 avril 2009
21 mars 2008 à 21:18
salut, je voudrais faire la meme chose que toi, mais je ne voispas ce que je dois changer dans ton code, a part mes id de connexion a ma sql et ma key pour google map.
Pourrais tu fournir une archive avec les pages necessaires?
0
Rejoignez-nous