Script per distanza indirizzi [era: Script Php che non capisco se funzioni !]

vitelli

Utente Attivo
23 Mar 2012
41
0
0
Ragazzi, ho questo piccolo script in php che non fa altro che restituire la distanza tra 2 indirizzi passati e la calcola tramite google map..ora quello che vedo è che fino a qualche giorno fa lo script funzionava..ora improvvisamente mi da sempre problemi di "Indirizzo Non trovato"..lo script è questo..sapete quale possa essere il problema????

PHP:
<?php
function get_driving_information($start, $finish, $raw = false)
 {
     if(strcmp($start, $finish) == 0)
     {
         $time = 0;
         if($raw)
         {
             $time .= ' seconds';
         }
 
        return array('distance' => 0, 'time' => $time);
     }
 
    $start  = urlencode($start);
     $finish = urlencode($finish);
 
    $distance   = 'unknown';
     $time       = 'unknown';
 
    $url = 'http://maps.google.com/m/directions?saddr='.$start.'&daddr='.$finish.'&hl=en&oi=nojs&dirflg=d';
     if($data = file_get_contents($url))
     {
         if(preg_match('@([0-9\.]+)[span<>/]{0,7} (mi|km)[span<>/]{0,7} - about <b>([^<]*)</b>@smi', $data, $found))
         {
             $distanceNum    = trim($found[1]);
             $distanceUnit   = trim($found[2]);
             $timeRaw        = trim($found[3]);
 
            if($raw)
             {
                 $distance = $distanceNum.' '.$distanceUnit;
                 $time     = $timeRaw;
             }
             else
             {
                 $distance = number_format($distanceNum, 2);
                 if(strcmp($distanceUnit, 'km') == 0)
                 {
                     $distance = $distanceNum / 1.609344;
                 }
 
                $time = 0;
 
                $parts = preg_split('@days?@i', $timeRaw);
                 if(count($parts) > 1)
                 {
                     $time += (86400 * $parts[0]);
                     $timeRaw = $parts[1];
                 }
 
                $parts = preg_split('@hours?@i', $timeRaw);
                 if(count($parts) > 1)
                 {
                     $time += (3600 * $parts[0]);
                     $timeRaw = $parts[1];
                 }
 
                $time += (60 * (int)$timeRaw);
             }
         }
         else
         {
             throw new Exception('Impossibile trovare questo indirizzo');
         }
 
        return array('distance' => number_format($distance*1609), 'time' => $time/60);
		$num1 = number_format($distance); 
     }
     else
     {
         throw new Exception('Could not resolve URL');
     }
 }
 ?>
 
  <?php
 {
   
	 $info = get_driving_information($inizio,$indirizzo);
	 echo $info['distance'].' km da Order Portal, ci occorrerebero circa '.$info['time'].' minuti per servirla con il nostro corriere ';
	 ?>
 

vitelli

Utente Attivo
23 Mar 2012
41
0
0
Effettivamente penso anche io che ci sia qualche problema con google/m il bello è che ho un esame nei prossimi gg in cui devo mostrare questo piccolo progetto..girando per la rete ho trovato questo script che fa effettivamente la stessa cosa (forse anche in maniera più elegante).

HTML:
<html>  
<head>  
   <meta http-equiv="content-type" content="text/html; charset=UTF-8"/>  
   <title>Google Maps JavaScript API v3 Example: Directions Complex</title>  
   <script type="text/javascript"  
           src="http://maps.google.com/maps/api/js?sensor=false"></script> 
</head>  
<body style="font-family: Arial; font-size: 13px; color: red;">  
   <div id="map" style="width: 400px; height: 300px;"></div>  
   <div id="duration">Duration: </div>  
   <div id="distance">Distance: </div>  
 
   <script type="text/javascript">  
 
   var directionsService = new google.maps.DirectionsService(); 
   var directionsDisplay = new google.maps.DirectionsRenderer(); 
 
   var myOptions = { 
     zoom:7, 
     mapTypeId: google.maps.MapTypeId.ROADMAP 
   } 
 
   var map = new google.maps.Map(document.getElementById("map"), myOptions); 
   directionsDisplay.setMap(map); 
 
   var request = { 
       origin: 'Napoli',  
       destination: 'Milano', 
       travelMode: google.maps.DirectionsTravelMode.DRIVING 
   }; 
 
   directionsService.route(request, function(response, status) { 
      if (status == google.maps.DirectionsStatus.OK) { 
 
         // Display the distance: 
         document.getElementById('distance').innerHTML +=  
            response.routes[0].legs[0].distance.value + " meters"; 
 
         // Display the duration: 
         document.getElementById('duration').innerHTML +=  
            response.routes[0].legs[0].duration.value + " seconds"; 
 
         directionsDisplay.setDirections(response); 
      } 
   }); 
   </script>  
  
</body>  
</html>

Solo che ho dei problemi nel passare il valore "distance.value" all'interno ad una variabile PHP, dato che poi effettuavo un piccolo controllo sul valore e visualizzavo un msg a schermo all'utente dove gli comunicavo se poteva ricevere la consegna oppure no...
 
Discussioni simili
Autore Titolo Forum Risposte Data
L Script per convertire numeri in parole Javascript 2
P Passare solo alcuni parametri a script per CSV PHP 0
felino Script PHP per leggere un file JSON. autenticazione? PHP 4
romeocharly [PHP] Script per rinominare in automatico le immagini inviate da ftp PHP 0
A [PHP] Script con array con numeri che iniziano per 00 PHP 2
TpD [PHP] Script per organizzazione presenza eventi PHP 3
webmachine [PHP] Script per censurare parole PHP 4
otto9due GDPR 25 Maggio - script per attivare analytics, facebook ecc.. dopo il consenso. jQuery 14
M [PHP] Script per controllo disponibilitá negozio in citta PHP 4
G Inserzione script nella pagina html per jquery jQuery 8
K Script PHP per leggere array.txt Presentati al Forum 3
N [Javascript] script demo preloader per video Javascript 0
Mauro Guardiani [PHP] script per caricamento video PHP 0
P [Javascript] Aiuto per recupero variabili da script Javascript 10
D script per far funzionare l'animazione Javascript 4
D script per far funzionare l'animazione Presentati al Forum 1
romeocharly Creare un script/codice in php per collegare un id mysql con un file PHP 0
xone [Vendo] Script php+mysql autocostruito per gestione giacenze magazzino Offerte e Richieste di Lavoro e/o Collaborazione 0
F Script php per IP camera PHP 12
M Script per convertire video youtube in mp3 PHP 1
M Comportamento strano di questo script per caricamento file sql in database PHP 7
D Creare script per calcolo ore PHP 11
L Script per aggiornare pagina html Javascript 2
Y script per upload file PHP 9
G Script per sincronizzare EBay PHP 0
Tommi Script per menù Javascript 16
G Cerco script per importare file .xml e .csv. Lavoro retribuito Offerte e Richieste di Lavoro e/o Collaborazione 2
F Spiegazione script java per randomizzare Javascript 0
IImanuII Licenza per script in PHP PHP 2
S Consigli per script javascript per creare videogiochi Javascript 2
G Script per chat sito adulti PHP 1
S aiuto per script PHP/OOP PHP 2
A Script per download non legge stensione file PHP 1
Z Script per aprire video youtube sia apre a schermo intero e poi ridimensionare in automatico Javascript 1
P Supporto per creare uno script "Add Cart" Offerte e Richieste di Lavoro e/o Collaborazione 7
D Script per email pubblicitarie PHP 2
filippino Script PHP per estrarre dati estrazioni da sito "10 e lotto" PHP 0
M Script Google Maps per ricavare coordinate di un indirizzo PHP 0
andry79fi PLUGIN (o script) per Pagina Facebook con INTERVENTI degli utenti WordPress 0
M Dove sbaglio con questo script per inserimento record? PHP 1
M [risolto] Script ajax per form e mappe Ajax 6
A Sito per presentazione di plugin e script Presenta il tuo Sito 0
P Script per far scomparire l'input dopo aver premuto invio? Javascript 8
H Script per visualizzare ip mi dà errori! PHP 0
A [RISOLTO] Script per il login PHP 8
P script per avviare webcam Javascript 0
C VENDO-SCRIPT ADDMEFAST per incremento FANS su FACEBOOK Annunci servizi di Social Media Marketing 0
D script per querystring Javascript 2
C VENDO SCRIPT per aumentare fan su pagine facebook Annunci servizi di Social Media Marketing 0
S Script per personalizzazione Javascript 6

Discussioni simili