Jump to content

Finding closest number to given x and given y in the database.


cody4camp

Recommended Posts

I am designing a mmorpg guild site, and decided to make a coordinate database. A user will enter their own coords, x and y, and the 10 closest coords to them will be displayed.

 

I need help doing this. My table is:

 

id

coordx

coordy

alliance

region

 

I am using $_GET to retrieve the user's input. so

$_GET['mex']

$_GET['mey']

 

Thanks in advance for your help.

 

pseudo-query (after validating/escaping get values):

 

SELECT id, alliance, region, ABS(sqrt(($_GET['mex'] - coordx) ^ 2 + ($_GET['mey'] - coordy) ^ 2)) AS distance FROM some_table ORDER BY distance

 

you'll probably want to use an absolute value, as negative distances will be encountered.

$result=dbquery("SELECT alliance, region, coordx, coordy, ABS(sqrt(($playerx - coordx) ^ 2 + ($playery - coordy) ^ 2)) AS distance FROM ".DB_COORDFUSION." ORDER BY distance LIMIT 25");

 

Also, the distance shows up in the table aswell. here is what it returns:4294967296

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.