Я работаю над проектом, где у каждого пользователя есть свои координаты широта / долгота, извлеченные из сервиса геокодера Google ...
Теперь я хочу реализовать функцию поиска -> вы можете ввести радиус(км), и если кто-то находится в радиусе, появится всплывающий профиль ...
не сложно было заставить это работать, когда область поиска на самом деле квадратная, но как мне это получить?работать, с кругом в качестве области поиска?
вот код, чтобы построить «поисковую» часть запроса mysql:
// This is the location of the user who submitted the search function.
mysql_select_db("$db_profile");
$sql = "SELECT location_lat,
location_lng
FROM location
WHERE id = '$global_id'";
$sql = mysql_query($sql);
$row = mysql_fetch_array($sql);
// The coordinates of the user.
$lat = $row['location_lat'];
$lng = $row['location_lng'];
// the entered radius in kilometers - here it is converted to degree (1° = 111km).
$x_degree = $global_search_radius_value / 111;
// define the search grid (it is a squere! but I want a circle!).
$lat_neg = $lat - $x_degree;
$lat_pos = $lat + $x_degree;
$lng_neg = $lng - $x_degree;
$lng_pos = $lng + $x_degree;
// build the search part of the mysql query
$heredoc_search_radius = <<<EOD
AND ($db_profile.location.location_lat > '$lat_neg'
AND $db_profile.location.location_lat < '$lat_pos'
AND $db_profile.location.location_lng > '$lng_neg'
AND $db_profile.location.location_lng < '$lng_pos')
EOD;
как я могу использовать круг вместоSquere!?