L'unico modo per Geolocalizza sul serverside sarebbe quella di utilizzare una tabella di ricerca per l'indirizzo IP. Ci sono servizi che forniscono questo per voi, in modo che si possa fare questo:
$ip = !empty($_SERVER['HTTP_X_FORWARDED_FOR']) ? $_SERVER['HTTP_X_FORWARDED_FOR'] : $_SERVER['REMOTE_ADDR'];
$url = "http://freegeoip.net/json/$ip";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 5);
$data = curl_exec($ch);
curl_close($ch);
if ($data) {
$location = json_decode($data);
$lat = $location->latitude;
$lon = $location->longitude;
$sun_info = date_sun_info(time(), $lat, $lon);
print_r($sun_info);
}
Non sarà sempre molto preciso però. In javascript avresti accesso all'API di geolocalizzazione HTML5 o Google Maps, ma il geocoding inverso con Google richiede l'utilizzo di una mappa, come da TOS.
Erm, latitudine nord/sud, sport. – pp19dd
@ pp19dd ah, ho cambiato longitudine e latitudine? –
latitudine e longitudine praticamente arriva in un determinato formato, se vuoi qualcos'altro, dovrai capirlo da solo. – adeneo