I bet you a Euro you're in North America, in which hemisphere longitudes are negative.
Try sticking your values for lat and long in parentheses.
Also, SQRT doesn't get you anything except extra computation here. You can order on the squared value just as easily, with the same result.
ORDER BY ((((".$long.")-LONG) * ((".$long.")-LONG))+
(((".$lat. ")-LAT ) * ((".$lat. ")-LAT )))
This typed-in sample worked from my local US zipcode file very nicely.
SELECT *
FROM ZIP
ORDER BY ((latitude-(42.811261)) * (latitude-(42.811261)))+
((longitude-(-70.877264))*(longitude-(-70.877264)))
Also, your locations better not be near either pole or more than about 15 megameters apart, or this rectangular approximation you're using is going to fall apart pretty spectacularly. If they are that far apart you're going to need to use a great-circle distance computation formula.