Saturday, May 15, 2010

Google MAP API | MySQL search within Radius

boleh mengunakan sql kod dibawah utk mencari lokasi mengunakan lat & long didalam databse mysql.

SELECT 
 *, 
 ( 
  3963.189  
   * 
  acos( 
   cos( radians($center_lat) ) * 
   cos( radians( field_lat ) ) * 
   cos( 
    radians( field_long ) - radians($center_long) 
   ) + 
   sin( radians($center_lat) ) * 
   sin( radians( field_lat ) ) 
  ) 
 ) AS distance 
FROM 
 table 
HAVING 
 distance < $radius
ORDER BY 
 distance

cuma kod ini agak lambat skit sebab mengunakan HAVING instead of WHERE statement.

kod di atas menggunakan mile/batu. kalau nka pakai Km tukar 3963.189 kepada 6378.8

utk kod utk peta saya akan pos kan kemudian...

happy coding.

No comments: