Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

Diego Chiarelotto

Calculo de distancia por cep

Recommended Posts

Bom dia galera.

estou precisando calcular a distancia entre 2 ceps atraves do xml do google.

 

com o codigo abaixo ele so da erro ao calcular cep.

 

<?
$xml = simplexml_load_file("http://maps.google.com/maps/api/directions/xml?sensor=false&origin=Guarulhos+-
+SP,+07060-000,Rua+Padre+Jos%C3%A9+de+Anchieta&destination=Guarulhos+-+SP,+07060-000");

if ($xml->status == 'OK'){
       echo ($xml->route->leg->distance->value/1000)." Km";
       echo '<br>Aproximadamente '.$xml->route->leg->duration->text;
}else{
       echo 'Erro ao calcular o local!!!';
}
?>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Ele não está retornando 'OK', mas 'NOT_FOUND' (não encontrado).

 

Este serviço do Google não funciona assim. É verificado que a requisição não está sendo feita por um servidor do Google e ele se finge de morto.

 

Para evitar abusos, o Google criou certa burocracia para prover seus serviços:

 

Você precisa ativar uma API key no Console de APIs do Google:

  • Clique em 'Services'
  • Procure por 'Google Places API', marque 'on'
  • Dê o nome e o endereço do site onde você irá usar essa API
  • Clique em "API access" na navegação à esquerda. A chave está listada na seção "Simple API Access".

 

Veja a documentação para saber como usar esta API do Google.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Amigão apos fazer uns testes aqui, que é o que essa galera que respondeu um monte de coisa nada haver ai devia ter feito, constatei o seguinte, voce errou na passagem de parametro na query string, aquele monte de "+" que tem na parada só funfa no browser, ou seja, quando vc coloca aquilo la no browser o XML é gerado mas no PHP na função simplexml_load_file não funfa aqui eu fiz o seguinte e funcionou:

 

<?

$xml = simplexml_load_file(urldecode("http://maps.google.com/maps/api/directions/xml?sensor=false&origin=Guarulhos+-
+SP,+07060-000,Rua+Padre+Jos%C3%A9+de+Anchieta&destination=Guarulhos+-+SP,+07060-000"));

?>

 

Acrescentei o urldecode pra acetar a string enviada para o maps.google para gerar o XML

 

Espero ter ajudado,

Grande Abraço

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.