Srs Boa Noite;
Após infinita buscas por um código que atende-se a minha necessidade de capturar a Latitude e a Longitude (Coordenadas) sem sucesso, resolvi Estudar a API GEOCOD do Google e desenvolvi esse código que agora compartilho com vocês o código esta funcionando 100%, + pode ser melhorado fiquem a vontade, mas enfim está aqui para quem quiser e estiver a procura de como capturar essas coordenadas, bom proveito.
ps; somente deixe os crédito ok…rsrsrsrsrsr
// Pegar Latitude e Longitude, através do Endereço e Salvar na Base de Dados.
// Autor: CARLOS BOTELHO;
//lendo a base para contar qtde de registros para fazer o while, poderia usar um Recordset, mas neste exemplo eu usei um formulario Blank
$check_sql = "SELECT Count(Id) as qtde FROM formulario ";
sc_lookup(rs, $check_sql);
if (isset({rs[0][0]})) // Row found
{
$qtde = {rs[0][0]};
}
else{
$qtde = 0;
}
$apiKey = ‘SUA APIKEYCOD AQUI’; ///<= Essa Api vocês podem se cadastrar no google e requisitar uma api.
// lendo os endereços na minha tabela
$check_sql = "SELECT Id, Logradouro, Numero, Bairro, Municipio, UF, Latitude, Longitude FROM formulario ";
sc_lookup(rs, $check_sql);
$i = 0; //<= variavel que vai avançar as linhas do recordset no while;
while ($i <= $qtde) {
if (isset({rs[$i][0]})) // Row found
{
// preenchendo os parametros que vão servir para montar a url de chamada da api.
$id = {rs[$i][0]};
$logradouro = {rs[$i][1]};
$numero = {rs[$i][2]};
$bairro = {rs[$i][3]};
$cidade = {rs[$i][4]};
$uf = {rs[$i][5]};
}
else // No row found
{
echo("Erro ocorrido");
}
$endereco = $numero." + ".$logradouro." + ".$bairro." + ".$cidade." + ".$uf;
// chamada da url do googleapi.
$geo = file_get_contents('https://maps.googleapis.com/maps/api/geocode/json?key='.$apiKey.'&address='.urlencode($endereco).'&sensor=false');
// converte o JSON para um array
$geo = json_decode($geo, true);
if ($geo['status'] == 'OK') {
// capturando a latitude e longitude do arquivo json e colocando numa variavel.
$latitude = $geo['results'][0]['geometry']['location']['lat'];
$longitude = $geo['results'][0]['geometry']['location']['lng'];
$upsql = "UPDATE formulario SET Latitude = '".$latitude. "', Longitude = '".$longitude."' where Id = '".$id."'";
sc_exec_sql ($upsql); //Populando a tabela com as coordenadas de retorno do json, passando o id do registro capturado anteriormente.
}
else {
echo "Erro ao montar o retorno do Json.";
}
$i++;
// somente para mostrar podem retirar.
echo $i."</ br>";
echo ("Latitude: ".$latitude."</ br>");
echo ("Longitude: ".$longitude."</ br>");
}
Bom é isso, espero que atenda as necessidades de vocês.
Forte abraço a todos.
ps; se melhorarem o script por favor me avisem ok?