Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    [Php - Google Maps] Script calcolo distanza tra due città

    Ho trovato questo ottimo script nel sito di html.it , che permette di calcolare la distanza in linea d'aria tra due città.

    E' perfettamente funzionante. Il problema è che quando utilizzo la mia Api Key al posto di quella presente nel codice, lo script smette di funzionare (mi ritorna un -1 al posto del calcolo della distanza, che immagino corrisponda a un "false").

    Prima di tutto, credevo che nelle nuove API v.3 la key non fosse obbligatoria (anche se raccomandata): ho provato anche a eliminarla dallo script, ma niente da fare.

    Secondo, l'ho generata da zero dal sito di Google Apis (in pratica seguendo questo procedimento ).

    Aggiungo che ho dovuto cercare questo script perché quello che avevo creato io (e che calcolava la distanza come questo) ha smesso tutt'a un tratto di funzionare: quando l'avevo creato qualche mese fa, avevo associato una api key di prova "abcdef" e funzionava benissimo.

    Ho notato un'altra cosa: l'api key dello script che ho scaricato da html.it è molto lunga:
    ABQIAAAAISyUpSDuJUSEnjS1fMYBDxTW9fsKZAisiVp5qCkmC-pCibnrtRQ_i2TvIwf8kfdXOdltc_CfIwhblw

    mentre la mia generata da zero ha meno della metà dei caratteri. Questa qua sopra appartiene alla v.2 immagino (i copyright sono del 2009).
    Avete comunque un'idea di come posso risolvere?

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,132
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Non so se ti puo' interessare ma in un mio sito avevo una tabella contenente un certo numero di citta' del mondo (diverse migliaia) e dovevo trovare le 10 citta' piu' vicine a una certa citta' X.

    Le avevo tutte in una tabella MySQL tipo:
    - city_id
    - city
    - city_lat
    - city_lng

    e facevo il tutto con una "semplice" query che tiene anche conto della curvatura terrestre:

    codice:
    <?php
    $sql = '
    SELECT
    	city,
    	( 3959 * ACOS( COS( RADIANS('.$cityLat.') ) * COS( RADIANS( city_lat ) ) * COS( RADIANS( city_lng ) - RADIANS('.$cityLng.') ) + SIN( RADIANS('.$cityLat.') ) * SIN( RADIANS( city_lat ) ) ) ) AS distance_mi,
    	( 6371 * ACOS( COS( RADIANS('.$cityLat.') ) * COS( RADIANS( city_lat ) ) * COS( RADIANS( city_lng ) - RADIANS('.$cityLng.') ) + SIN( RADIANS('.$cityLat.') ) * SIN( RADIANS( city_lat ) ) ) ) AS distance_km
    FROM
    	cities
    WHERE
      city_id != '.$cityId.'
    ORDER BY
      distance_km
    LIMIT
    	10';
    ?>
    All work and no play makes EricFlat a dull boy

  4. #4
    Cavicchiandrea, è esattamente quello che stavo cercando

    @EricFlat: avevo pensato anch'io a cercarmi un elenco di città con coordinate, ma nel mio caso l'utente mi passa esattamente il suo indirizzo civico e a volte non riesco a estrapolare la città precisa. Il tuo script però è interessante, lo tengo buono per il futuro...

    Grazie a entrambi

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.