Kako da u mysql upitu ubacim i funkciju
evo na primer:
function distance($lon1, $lat1, $lon2, $lat2) {
// $convert to radians
$lon1 = ($lon1*pi()) / 180;
$lon2 = ($lon2*pi()) / 180;
$lat1 = ($lat1*pi()) / 180;
$lat2 = ($lat2*pi()) / 180;
// haversine formula
$dlon = $lon2 - $lon1;
$dlat = $lat2 - $lat1;
$a = (sin($dlat/2) * sin($dlat/2)) + cos($lat1) * cos($lat2) * (sin($dlon/2) * sin($dlon/2));
$c = 2 * atan2(sqrt($a), sqrt(1-$a));
// figure out in miles & kilometers
$mi = round(3956 * $c, 2);
$km = round(6367 * $c, 2);
//return "$km km ($mi mi)";
return $km;
}
ovo mi vraca rastojanje u km izmedju 2 tacke na osnovu njihovih koordinata.
sada bih hteo da formiram upit koji ce mi prikazati na primer sva mesta koja su od jednog mesta na rastojanju manjem od zadate kilometraze.
$query="select * from $tabela where distance(47.496113, 8.906944, $tabela.breite,$tabela.laenge)<$razdaljina";
mysql_query($query);
ali mi javlja gresku da ne valja upit
kada u sledecem redu stavim
while($niz=mysql_fetch_array($result)){