2016-12-28 5 views
0

現在の場所から約20メートルの場所を探しています。私はデータベース(MySQL)にこの場所のコーディネートを持っています。 私が必要とするのは、この座標をデータベースから取り出し、それを何とか私のものと比較することです。特定の「ピン」が20メートルに近い場合、簡単なトースト通信が行われるはずです。半径を使用して近くのオブジェクトを検索します。 Googleマップ

はまず、私はアンドロイドのスタジオを使用しているデータベース

から現在位置を取得して助けが必要。

+0

のですか? – Blackkara

+1

IMHO、デバイス上であなたの現在の位置を取得し、サーバーに送信し、計算された結果セット(あなたの周りの20メートルの場所)を受け取る – Blackkara

+0

既にデータベースにあるこれらの場所の位置を取得する –

答えて

0

私はあなたに正確な答えを与えていませんが、私はあなたに手がかりを与えます。

これらのタイプの問題を処理する最もよい方法は、SQLに魔法をかけさせ、半径と座標に応じて結果を返すことです。ここで

はDATABASE_から現在位置を_gettingサンプルSQLクエリ

public function gettemples($latitude, $longitude, $distance, $templetype, $limitno){ 
     $this->connect(); 
     // $query = "SELECT * FROM temples"; 

     $query = "SELECT *, (6371 * acos(cos(radians(".$latitude.")) * cos(radians(latitude)) * 
      cos(radians(longitude) - radians(".$longitude.")) + sin(radians(".$latitude.")) * 
      sin(radians(latitude)))) AS distance FROM temples HAVING 
      distance < ".$distance." ORDER BY distance LIMIT 0 , ".$limitno.""; 
       $stmt = $this->connection->prepare($query); 
       $result = $stmt->execute(); 
       $results = $stmt->fetchAll(PDO::FETCH_ASSOC); 
       return $results; 
    } 
関連する問題