Estou usando o gmap da seguinte forma:
Tenho uma biblioteca em php que faz a procura.
a variavel [gmap] é o key que gravo na base.
No onvalidade, obtenho o x e o y para gravar na base.
if (!empty({ocor_cep_ocorrencia}) && !empty({ocor_nr_end_ocorrencia}))
{
$sql = “select ENDERECO from CEP where CEP= '” . {ocor_cep_ocorrencia} ."’";
sc_lookup(rs_geo,$sql);
$end = {rs_geo[0][0]} . “,” . {ocor_nr_end_ocorrencia} . “- [cidade] - [uf] - BRASIL” ;
$gmaps = new gMaps("[gmap]");
$dados = $gmaps->geolocal($end);
{lat} = $dados[‘lat’];
{lon} = $dados[‘lon’];
{zoom} = $dados[‘zoom’];
}
para mostar faço o seguinte: em um blank
?>
Mapa de Ocorrência em Aberto
<?
e finalmente a classe: que uso em uma biblioteca.
<?php
class gMaps {
// Host do GoogleMaps
private $mapsHost = 'maps.google.com';
// Sua Google Maps API Key
public $mapsKey = '';
function __construct($key = null) {
if (!is_null($key)) {
$this->mapsKey = $key;
}
}
function carregaUrl($url) {
if (function_exists('curl_init')) {
$cURL = curl_init($url);
curl_setopt($cURL, CURLOPT_RETURNTRANSFER, true);
curl_setopt($cURL, CURLOPT_FOLLOWLOCATION, true);
$resultado = curl_exec($cURL);
curl_close($cURL);
} else {
$resultado = file_get_contents($url);
}
if (!$resultado) {
return false;
//trigger_error('Não foi possÃvel carregar o endereço:
' . $url . '');
} else {
return $resultado;
}
}
function geoLocal($endereco) {
$url = 'http://'. $this->mapsHost .'/maps/geo?output=csv&key='. $this->mapsKey .'&q='. urlencode($endereco);
$dados = $this->carregaUrl($url);
list($status, $zoom, $latitude, $longitude) = explode(',', $dados);
if ($status != 200) {
return false;
//trigger_error('Não foi possÃvel carregar o endereço
"'.$endereco.'", código de resposta: ' . $status);
}
return array('lat' => $latitude, 'lon' => $longitude, 'zoom' => $zoom, 'endereco' => $endereco);
}
}
?>