http://forum.html.it/forum/showthrea...readid=1428842
Se vuoi usare i record che ti sei ricavato e interrogare google, puoi provare eseguendo 2 richieste geocode:
Codice PHP:
$google_maps_key='LA TUA KEY';
$chiave = 'Firenze Italia';
$chiave=urlencode(trim($chiave));
$richiesta = file_get_contents("http://maps.google.com/maps/geo?q=$chiave&output=xml&key=$google_maps_key&oe=utf-8&sensor=false");
$xml = new SimpleXMLElement($richiesta);
list($lgn,$lat,)=explode(',',$xml->Response->Placemark->Point->coordinates);
$richiesta2 = file_get_contents("http://maps.google.com/maps/geo?q=$lat,$lgn&output=xml&key=$google_maps_key&oe=utf-8&sensor=false");
$xml = new SimpleXMLElement($richiesta2);
$cap=$xml->Response->Placemark->AddressDetails->Country->AdministrativeArea->SubAdministrativeArea->Locality->PostalCode->PostalCodeNumber;
fai un ciclo...
Perchè 2 richieste? perchè (per grandi città specialmente) ti viene restituito un punto con accuracy basso e con coordinate x,y, non so con quali criteri viene scelto, ed un indirizzo incompleto.
Se interroghi con lat e lng precise hai accuracy 8 ed un indirizzo completo.
Se hai già le coordinate del comune o un indirizzo preciso (strada e numero civico) esistente, ti puoi evitare la richiesta 1 ed eseguire la richiesta2.
Il codice utilizza le API versione 2, ti devi quindi procurare l'Api key.
La versione 3 ti limita a 2500 richieste giornaliere e i comuni sono circa 8000.