Citat:
function Distance($p1, $p2, $p3, $p4)
{
$earthRadius = 3958;
$distance = number_format(($earthRadius * pi() * sqrt(($p1 - $p3) * ($p1 - $p3) + cos($p1 / 57.29578) * cos($p3 / 57.29578) * ($p2 - $p4) * ($p2 - $p4) ) / 180) * 1.609344, 3) + 0.040;
if($distance < 0.1) return '0.1 km';
else if($distance > 1) return number_format(($distance), 1).' mil';
else if($distance > 0.1) return number_format($distance, 1).' km';
else return $distance.' km';
}
|
Du får själv översätta till ASP
Alternativt om du vill hämta det direkt ur databas (och sortera etc därefter)
Citat:
SELECT places.*, ( 3959 * acos(cos(radians({$latitude})) * cos(radians(latitud)) * cos(radians(longitud) - radians({$longitude})) + sin(radians({$latitude})) * sin(radians(latitud)))) AS distance FROM places ORDER BY distance ASC
|