ผมไม่สามารถที่จะให้ source code ทั้งหมดไปได้น่ะครับ เพราะผมจะนำไปพัฒนาต่อ
แต่ผมสามารถช่วยเหลือในบางส่วนได้ครับ
วันนี้ ผมก็เลยเอามาให้ดูกันเลยแล้วกันครับว่า source code search around ทางฝั่ง server (PHP and MySQL) มันเป็นยังไง
อันนี้ return data เป็น json น่ะครับ
android ก็แค่มา get เอาข้อมูลไปก็แค่นั้นเอง
code คือ return list of friends on location area
... ... ... mysql_connect($host,$user,$password) or die("unable connect to database server!"); mysql_select_db("my_project"); mysql_query("SET NAMES UTF8"); $result_query = mysql_query( "SELECT u.id, u.firstname, u.lastname, u.img, u.about, u.latitude, u.longitude, ( 6371 * acos( cos( radians( '$latitude' ) ) * cos( radians( u.latitude ) ) * cos( radians( u.longitude ) - radians( '$longitude' ) ) + sin( radians( '$latitude' ) ) * sin( radians( latitude ) ) ) ) AS distance, f.confirm FROM tbl_user u LEFT JOIN tbl_friend f ON ( u.id = f.user2 AND '$id' = f.user1 ) WHERE u.id <> '$id' HAVING distance <= '$radius' ORDER BY distance ASC "); $count=0; $response = array(); while($data=mysql_fetch_array($result_query)){ $response[$count++]=array( "id" => $data["id"], "firstname" => $data["firstname"], "lastname" => $data["lastname"], "img" => $data["img"], "about" => $data["about"], "latitude" => $data["latitude"], "longitude" => $data["longitude"], "distance" => $data["distance"], "confirm" => $data["confirm"] ); } echo json_encode($response);ผลที่ได้คือ
ผม อยากให้ สอน เลย อะมันจะเปนไปได้มั้ยคับ เพราะ ผมก้ทำโปรเจค คล้ายกันอยู่ ... ช่วยตอบ กับที คับ walker.better@gmail.com
ตอบลบช่วงนี้ ผมไม่ได้เขียน android เลยครัย
ตอบลบจับแต่ j2EE ไม่มีเวลามาเล่นเลยครับ
อยากให้อธิบาย ช่วงนี้ให้กับคนโง่ๆอย่างผมหน่อยครับ ดูแล้วมึนมาก งง ทั้งบวก ทั้ง ลบ ทั้ง ดาว ทำไมเยอะขนาดนี้
ตอบลบu.longitude,
( 6371 * acos(
cos( radians( '$latitude' ) )
* cos( radians( u.latitude ) )
* cos(
radians( u.longitude )
- radians( '$longitude' )
)
+ sin( radians( '$latitude' ) )
* sin( radians( latitude ) )
)
) AS distance
มันมาจากทฤษฎีนี้ครับ
ตอบลบhttp://en.wikipedia.org/wiki/Haversine_formula
ที่จริงการคำนวณระห่างระหว่าง GPS 2 จุด เราสามารถทำได้อีกวิธีครับ
ตอบลบแต่วิธีนี้ ต้องมีค่าความแตกต่างของพื้นที่ในแต่ละ ละติจูดเข้ามาเกี่ยวข้อง http://na5cent.blogspot.com/2011/07/gps-2-javascript.html ซึ่งผมขอแนะนำสูตร haversine ดีกว่าครับ
ขอบคุณ ครับ เทพจริง
ตอบลบ