То, что я пытаюсь сделать, это то, что у меня есть записи в базе данных, у которых есть lat/long. Я хочу рассчитать расстояние между пользователями lat/long и записями lat/long (в DB). После этого я хочу повторить те, которые пройдут дистанцию менее 500 метров. Пока я могу это сделать, используя foreach
.
<?php
mysql_connect("localhost", "beepbee_kunwarh", "kunwar") or die('MySQL Error.');
mysql_select_db("beepbee_demotest") or die('MySQL Error.');
$Lat = $_REQUEST['Lat'];
$long = $_REQUEST['long'];
$query = mysql_query("SELECT a.*, 3956 * 2 * ASIN(SQRT( POWER(SIN(($Lat - Lat) * pi()/180 / 2), 2) + COS($Lat * pi()/180) * COS(Lat * pi()/180) *POWER(SIN(($long - long) * pi()/180 / 2), 2) )) as distance FROM userResponse GROUP BY beepid HAVING distance <= 500 ORDER by distance ASC;");
$data = array();
while ($row = mysql_fetch_array($query)) {
$data[] = $row;
}
echo json_encode($data);
?>