Voilà j'ai une BDD avec des lieux avec leurs adresses 1 et 2, leur code postal et leur ville
J'aimerais récupérer leur longitude et latitude (Geocoding) pour ensuite savoir s'ils sont en France ou non (Reverse Geocoding)
Voilà le code :
$address = $street1. ',+'.$street2.'+'.$postal_code.',+'.$city;
function getLatLong($address){
if (!is_string($address))die("All Addresses must be passed as a string");
$_url = sprintf('http://maps.google.com/maps?output=js&q=%s',rawurlencode($address));
$_result = false;
if($_result = file_get_contents($_url)) {
if(strpos($_result,'errortips') > 1 || strpos($_result,'Did you mean:') !== false) return false;
preg_match('!center:\s*{lat:\s*(-?\d+\.\d+),lng:\s*(-?\d+\.\d+)}!U', $_result, $_match);
$_coords['lat'] = $_match[1];
$_coords['long'] = $_match[2];
}
return $_coords;
}
$latitude = $_coords['lat'];
$longitude = $_coords['long'];
$url = "http://maps.googleapis.com/maps/api/geocode/xml?latlng=$longitude,$latitude&sensor=false";
$xml = file_get_contents($url);
$sxe = new SimpleXMLElement($xml);
if( 'OK' === (string)$sxe->status) {
echo $sxe->result->formatted_address;
} else {
echo 'ERREUR : ' . $sxe->status;
}
Mais j'ai plusieurs erreurs :
Line 26 :Notice: Undefined variable: street1 in /Applications/MAMP/htdocs/Test/Site.php on line 26
Notice: Undefined variable: street2 in /Applications/MAMP/htdocs/Test/Site.php on line 26
Notice: Undefined variable: postal_code in /Applications/MAMP/htdocs/Test/Site.php on line 26
Notice: Undefined variable: city in /Applications/MAMP/htdocs/Test/Site.php on line 26
Notice: Undefined variable: _coords in /Applications/MAMP/htdocs/Test/Site.php on line 42
Notice: Undefined variable: _coords in /Applications/MAMP/htdocs/Test/Site.php on line 43
ERREUR : ZERO_RESULTS
$address = $street1. ',+'.$street2.'+'.$postal_code.',+'.$city;
Line 42 : $latitude = $_coords['lat'];
Line 43 : $longitude = $_coords['long'];
Pourriez-vous m'aider ? (Je pense que je suis une quiche et qu'il faut initialiser $street1, $street2, ... car je les appelles dans une fonction SELECT)