2010-12-08 27 views
1

J'aimerais ajouter une fonctionnalité à mon site Web où un client peut entrer son code postal, et il recherche automatiquement son adresse avec Google Géocodage ou un opensource/Bing équivalent.Implémentation d'une recherche d'adresse avec Google Geocoding API (ou similaire)

Est-ce que quelqu'un a obtenu un code d'échantillon ou connaît-il un bon guide où je peux faire ceci?

Si elle est faite en utilisant jQuery encore mieux :)

Un grand merci à l'avance

Darren

Répondre

0

Êtes-vous après la partie de la cartographie seulement ou que vous voulez vraiment saisir l'adresse du client?

Si vous êtes après l'adresse complète, alors le Royal Mail PAF est ce dont vous avez besoin. Jetez un oeil à notre société, CraftyClicks - nous revendons les données PAF à un coût très raisonnable.

L'API Google vous indique uniquement l'emplacement et une carte.

Cheers, Adam

+0

Je m'inscris maintenant Adam - merci pour votre aide à tous! – Darren

2

Je travaille actuellement sur une application Google Maps qui utilise géocodage en ce moment ... Il est mon D'abord, je me suis donc largement appuyé sur l'API Google Maps. Voici les liens pour vous aider à démarrer:

http://code.google.com/apis/maps/documentation/javascript/basics.html - Un point de départ basique pour l'API en général.

Regardez dans la colonne de gauche pour le tutoriel, géocodage (ou suivez le lien de géocodage à mi-chemin dans le tutoriel), et des exemples de code.

Tout cela m'a permis de commencer.

Bonne chance!

Lelando

+0

http://code.google.com/apis/maps/documentation/javascript/tutorial.html - le didacticiel – Lelando

+0

http://code.google.com/apis/maps/documentation/javascript/services.html# Géocodage - la page de géocodage – Lelando

+0

http://code.google.com/apis/maps/documentation/javascript/examples/index.html - Échantillons de code – Lelando

5

En utilisant l'API de jQuery de getJSON et Google - http://codepen.io/seanjacob/pen/wfcHB

$('#submit').click(function(){ 

    //Get Postcode 
    var number = $('#number').val(); 
    var postcode = $('#postcode').val().toUpperCase();; 

    //Get latitude & longitude 
    $.getJSON('http://maps.googleapis.com/maps/api/geocode/json?address=' + postcode + '&sensor=false', function(data) { 

    var lat = data.results[0].geometry.location.lat; 
    var lng = data.results[0].geometry.location.lng; 

    //Get address  
    $.getJSON('http://maps.googleapis.com/maps/api/geocode/json?latlng=' + lat + ',' + lng + '&sensor=false', function(data) {    
     var address = data.results[0].address_components;    
     var street = address[1].long_name; 
     var town = address[2].long_name; 
     var county = address[3].long_name;       

     //Insert 
     $('#text').text(number + ', ' + street + ', ' + town + ', ' + county + ', ' + postcode); 

    }); 
    }); 
}); 

À moins que vous utilisez l'API Google Maps for Business, vous êtes limité à 2500 demandes de géolocalisation par jour. Puisque ce script fait deux requêtes par course, cela correspond à 1 250 recherches par code postal par jour.

+0

le lien est cassé –

+0

Fixe, ajouté un lien vers mon propre codepen, je ne vais pas supprimer – seanjacob

+0

Aime bien +1 :) –