GG Maps : max de marqueurs
17 messages • Page 1 sur 2 • 1, 2
Consultez la formation Google Maps, News, Images de WebRankInfo / Ranking Metrics
GG Maps : max de marqueurs
Bonjour,
je poursuis mon apprentissage de l'API GG maps.
quelques questions :
1- quel est le nombre maximum de marqueurs qu'on peut mettre sur une carte (j'utilise la géolocalisation) ?
2- j'envoie environ 500 adresses, et à chaque fois, la carte affiche une trentaine de marqueurs. pourquoi ?
3- le pire c'est que ces 30 marqueurs affichés ne sont jamais les mêmes !!!
merci de vos réponses et de m'éclaircir ma petite cervelle
je poursuis mon apprentissage de l'API GG maps.
quelques questions :
1- quel est le nombre maximum de marqueurs qu'on peut mettre sur une carte (j'utilise la géolocalisation) ?
2- j'envoie environ 500 adresses, et à chaque fois, la carte affiche une trentaine de marqueurs. pourquoi ?
3- le pire c'est que ces 30 marqueurs affichés ne sont jamais les mêmes !!!
merci de vos réponses et de m'éclaircir ma petite cervelle
Salut,
C'est un peu n'importe quoi d'utiliser le géocodage pour placer des points, long, et couteux en ressources serveur. C'est pour cette raison que ce type de requête est limité chez google (à 10000 par jour il me semble), et peut être à X pour une carte, pour justement éviter ce que tu essaie de faire
Il faut que tu convertisse une fois pour toute tes adresses postales en adresses lat/lon, et que tu envoie à Google des adresses lat/lon ! Si tu veux j'ai un bout de script qui fait ça.
C'est un peu n'importe quoi d'utiliser le géocodage pour placer des points, long, et couteux en ressources serveur. C'est pour cette raison que ce type de requête est limité chez google (à 10000 par jour il me semble), et peut être à X pour une carte, pour justement éviter ce que tu essaie de faire
Il faut que tu convertisse une fois pour toute tes adresses postales en adresses lat/lon, et que tu envoie à Google des adresses lat/lon ! Si tu veux j'ai un bout de script qui fait ça.
Je te laisse te dépatouiller avec ça, n'hésites pas si tu as un pb.
le script va cherche le premier client don lat/on n'est pas renseigné, et l'affiche sur une carte, tu valide et ça passe au suivant.
le script va cherche le premier client don lat/on n'est pas renseigné, et l'affiche sur une carte, tu valide et ça passe au suivant.
- Code: Tout sélectionner
<?php
// CONNEXION BDD
// Base CLIENTS (id, nom, adresse, lat, lon)
// ENREGISTRERMENT GEOCODAGE
if (!empty($_POST[p]))
{
$p=explode(';',$_POST[p]);
// sql_query effectue une requete à la base de donnee
sql_query("UPDATE clients SET lat='".$p[0]."', lon='".$p[1]."' WHERE id='".$_POST[client]."'");
echo '### Client n°'.$_POST[client].' enregistré (lat: '.$p[0].' ; lon: '.$p[1].')<br />';
}
// SELECTION CLIENT A GEOCODER
// sql_getrow selectionne une ligne de la base de donnée
$client=sql_getrow("SELECT id, nom, adresse FROM clients WHERE lat=0 OR lon=0 ORDER BY id ASC LIMIT 0,1");
mysql_close($sql);
?>
<!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" xmlns:v="urn:schemas-microsoft-com:vml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>Géocodage clients</title>
<script src="http://maps.google.com/maps?file=api&v=2&key=CLE_API" type="text/javascript"></script>
<script type="text/javascript">
//<![CDATA[
if (GBrowserIsCompatible())
{
var map;
var geo;
function load()
{
map = new GMap2(document.getElementById("map"));
map.addControl(new GLargeMapControl());
map.addControl(new GMapTypeControl());
map.setCenter(new GLatLng(45,5),5);
// ====== Cree un Client Geocoder ======
geo = new GClientGeocoder();
// Envoie le binz
showAddress();
}
// ====== Place un marqueur ======
function place(lat,lng)
{
var point = new GLatLng(lat,lng);
map.setCenter(point,14);
map.addOverlay(new GMarker(point));
document.getElementById("message").innerHTML = "";
document.getElementById('p').value=lat + ';' + lng;
document.getElementById('save').disabled=false;
}
// ====== Geocoding ======
function showAddress()
{
document.getElementById('p').value='';
document.getElementById('save').disabled=true;
var adresse = document.getElementById("adresse").value;
geo.getLocations(adresse, function (result)
{
map.clearOverlays();
// ======== REPONSE(S) =========
if (result.Status.code == G_GEO_SUCCESS)
{
// ======== Multi réponses =========
if (result.Placemark.length > 1)
{
document.getElementById("message").innerHTML = "Vous avez voulu dire :";
for (var i=0; i<result.Placemark.length; i++)
{
var p = result.Placemark[i].Point.coordinates;
document.getElementById("message").innerHTML += "<br>"+(i+1)+"- <a href='javascript:place(" +p[1]+","+p[0]+")'>"+ result.Placemark[i].address+"</a>";
}
}
// ======== Simple réponse =========
else
{
p = result.Placemark[0].Point.coordinates;
document.getElementById('returned_adresse').innerHTML=result.Placemark[0].address;
place(p[1],p[0]);
}
}
// ====== ERREUR ======
else alert('Erreur : Code ' + result.Status.code);
});
}
}
else alert("Désolé, Google Maps API n'est pas compatible avec votre navigateur");
//]]>
</script>
</head>
<body onload="load()" onunload="GUnload()" >
<form onsubmit="showAddress(); return false">
<?php echo $client[nom]; ?> <input id="adresse" size="60" type="text" value="<?php echo $client[adresse]; ?>">
<input type="submit" value="Géo !">
</form>
<form action="geocodage_clients.php" method="post">
Adresse [<span id="returned_adresse"></span>] géocodée <input type="text" id="p" name="p" readonly></input><input type="hidden" id="client" name="client" value="<?php echo $client[id]; ?>"></input> <input type="submit" id="save" name="save" value="Enregistrer !" disabled>
</form>
<div id="message"></div>
<div id="map" style="width: 600px; height: 400px"></div><p>
</body>
</html>
sinon je viens de trouver cela ça peut aider pas mal de gens !!!! :
http://pagesperso-orange.fr/universimme ... loc_fr.htm
à bookmarker
http://pagesperso-orange.fr/universimme ... loc_fr.htm
à bookmarker
Sauf que
- ça ne renvoie que la première réponse : tape "place de la poste", tu verra.
- Si tu dois traiter quelques dizaines d'URL, bonjour le problème. Ma solution est branchée sur ta base de donnée, donc en un clic tu envoie la sauce
- ça ne renvoie que la première réponse : tape "place de la poste", tu verra.
- Si tu dois traiter quelques dizaines d'URL, bonjour le problème. Ma solution est branchée sur ta base de donnée, donc en un clic tu envoie la sauce
Bonjour tout le monde !
jeroen t'as fct "place" m'intéresse beaucoup mais voilà j'aurai 2-3 questions:
Qu'est ce que c'est que "GLatLng" ?
l'api "map.addOverlay(marker)" permet d'ajouter une balise.
Mais dans ton code tu met "new GMarker", qu'est ce que que GMarker ??
merci de bien vouloir répandre à mes petites questions svp
merci beaucoup !
jeroen t'as fct "place" m'intéresse beaucoup mais voilà j'aurai 2-3 questions:
- Code: Tout sélectionner
function place(lat,lng)
{
var point = new GLatLng(lat,lng);
map.setCenter(point,14);
map.addOverlay(new GMarker(point));
document.getElementById("message").innerHTML = "";
document.getElementById('p').value=lat + ';' + lng;
document.getElementById('save').disabled=false;
}
Qu'est ce que c'est que "GLatLng" ?
l'api "map.addOverlay(marker)" permet d'ajouter une balise.
Mais dans ton code tu met "new GMarker", qu'est ce que que GMarker ??
merci de bien vouloir répandre à mes petites questions svp
merci beaucoup !
GLatLng crée un Point défini par sa Latitude et sa Longitude
Gmarker crée un marqueur a partir de ce point.
La doc google est là :
http://code.google.com/apis/maps/docume ... ml#GLatLng
http://code.google.com/apis/maps/docume ... ml#GMarker
Gmarker crée un marqueur a partir de ce point.
La doc google est là :
http://code.google.com/apis/maps/docume ... ml#GLatLng
http://code.google.com/apis/maps/docume ... ml#GMarker
Merci pr ta réponse jeroen
Je profite de tes connaisances pour te demander une derniére chose :
Pour utiliser l'API "GMarker.openInfoWindow(content, opts?)" il est marquer "The content of the info window is given as a DOM node." Mais qu'est ce le DOM node ?
Merci infiniment
Je profite de tes connaisances pour te demander une derniére chose :
Pour utiliser l'API "GMarker.openInfoWindow(content, opts?)" il est marquer "The content of the info window is given as a DOM node." Mais qu'est ce le DOM node ?
Merci infiniment
Si tu ne maîtrise pas les DOM, je te laisse jeter un coup d'oeil par là : http://fr.selfhtml.org/javascript/objet ... eneralites
Salut,
Je ne comprends pas pourquoi mais la fct ne place pas de repère au coordonnée souhaité (lat=43.57691664771851 et lng=1.402451992034912);
Merci
function place(lat,lng)
{
alert('lat '+ lat);
alert('lng '+ lng);
var point = new GLatLng(lat,lng);
map.setCenter(point,14);
map.addOverlay(new GMarker(point));
}
Je ne comprends pas pourquoi mais la fct ne place pas de repère au coordonnée souhaité (lat=43.57691664771851 et lng=1.402451992034912);
Merci
17 messages • Page 1 sur 2 • 1, 2
Formation recommandée sur ce thème :
Formation Google Maps, Google News et Google Images : apprenez comment optimiser le référencement de votre site pour la recherche universelle et notamment Google Maps, Google Actualités et Google Images. Formation animée par Olivier Duffez et Fabien Facériès, experts en référencement naturel.
Tous les détails sur le site Ranking Metrics : programme, prix, dates et lieux, inscription en ligne.
Lectures recommandées sur ce thème :
- Tutorial Google Maps API
- API Google Maps en Flash / Flex
- Yahoo Maps API
- Plein de chiffres incroyables sur Google Maps
- Google AdWords introduit le concept de niveau de qualité
- Google Maps pour Mobiles (version Windows Mobile)
- Analyse de Google Maps et Yahoo Local
- BloGoMaps : le blog officiel de Google Maps (en français)
- Google Lat Long : un blog sur Google Earth et Google Maps
- Google Maps gagne des parts de marché
Consultez la description détaillée des produits ou services de Google suivants : Google Maps API
Qui est en ligne
Utilisateurs parcourant ce forum: Aucun utilisateur enregistré et 0 invités




le forum