Ir ao conteúdo

Posts recomendados

Postado

Olá, colega.


Confesso que nunca usei esse serviço, mas fiz um teste hoje pela manhã para ver como funciona.


Se a proposta é usar a opção do site abaixo que você nos trouxe:

 

21 horas atrás, xrogerinho disse:

 

Devo lhe informar que apenas o código que você quer não funciona, pois você precisa ter uma API Key do Google Maps Platform pata autenticar.


Como informa a resposta da solicitação abaixo:

 

<DistanceMatrixResponse>
<status>REQUEST_DENIED</status>
<error_message>You must use an API key to authenticate each request to Google Maps Platform APIs. For additional information, please refer to http://g.co/dev/maps-no-account</error_message>
</DistanceMatrixResponse>

 

Eu fiz o teste com exemplos de código padrão encontrados na web, como este, com esse por exemplo: https://pt.stackoverflow.com/questions/153077/php-calcula-distância-entre-cidades


Mas ele apenas funciona se você tiver criado uma API Key do Google Maps Platform, pelo que pude observar.


Criar é fácil, eu criei uma na conta que eu tenho e funciona bem, mas a criação da conta, mesmo que de forma gratuita, pede a inclusão de um cartão de crédito, como mostrado abaixo:

 

cobranca-min.thumb.jpg.6ceba13908abb76bea22f976f1e9040f.jpg


Comigo funcionou, pois, eu já tenho minha conta de faturamento no Google com o meu devido cartão de crédito cadastrado.


Infelizmente não posso colocar aqui o meu código que funcionou, pois ele tem a minha API Key do Google Maps Platform vinculado ao meu cartão de credito. Você vai precisar criar uma para você.


O seu problema não se resolve apenas com o código, pelo que pude apurar.


Mas como não existem pessoas donas da verdade, aguarde para ver se algum outro colega pode trazer outras opções.


Abraços e boa sorte.

Postado

@xrogerinho

Pelo que eu observei, até parece se de graça mesmo. E Google me ofereceu um limite gratuito, mas para liberar esse limite gratuito, eles só ativam a conta se você inserir o cartão de credito.

 

Eu acho que eles fazem isso, para começar a cobrar das pessoas no cartão assim que o limite gratuito acabe.

 

Mas vamos  ver se alguém aqui tem outra solução.

 

Abraços.

Postado

@Marcelo Calazans muito obrigado mesmo! 

 

então basicamente a chamada do servico é atraves da linha

 

$url = "http://maps.googleapis.com/maps/api/distancematrix/json?origins=$origin&destinations=$destino&mode=driving&language=en-EN&sensor=false";

 

 

Postado
15 minutos atrás, xrogerinho disse:

então basicamente a chamada do servico é atraves da linha

 

Exato, é através da linha.


Essa linha abaixo devolve uma variável que deve ser tratada no PHP.

 

$url = "http://maps.googleapis.com/maps/api/distancematrix/json?origins=$origin&destinations=$destino&mode=driving&language=en-EN&sensor=false";

 

Como mostra o código abaixo do stackoverflow que eu coloquei acima no link, e que eu usei como base para criar o meu código.

 

$i = 0;
$arr = array('90450000','95180000');

foreach ($arr as &$valuedestino) {


    $origin = '95700000';
    $destino = $valuedestino;



    $url = "http://maps.googleapis.com/maps/api/distancematrix/json?origins=$origin&destinations=$destino&mode=driving&language=en-EN&sensor=false";

    $data = @file_get_contents($url);

    $result = json_decode($data, true);

    foreach($result['rows'] as $distance) {
        $i++;
        echo '<br>';
        echo "$i - Distance from you: " . $distance['elements'][0]['distance']['text'] . ' (' . $distance['elements'][0]['duration']['text'] . ' in current traffic)';
    }
}

 

Esse código do stackoverflow acima, funciona perfeitamente comigo, você pode até usá-lo, mas no final da linha, você terá que colocar a sua API Key do Google Maps Platform, como está abaixo:

 

$url = "http://maps.googleapis.com/maps/api/distancematrix/json?origins=$origin&destinations=$destino&mode=driving&language=en-EN&sensor=false&key=SUA API KEY";


E se você não inserir a sua API KEY, essa linha retorna o seguinte erro:

 

<DistanceMatrixResponse>
<status>REQUEST_DENIED</status>
<error_message>You must use an API key to authenticate each request to Google Maps Platform APIs. For additional information, please refer to http://g.co/dev/maps-no-account</error_message>
</DistanceMatrixResponse>

 

  • Obrigado 1

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!