相同的PHP文件在XAMPP中工作但在我的实时网站中没有

Previously I used this code & query to find location within some miles of radius, But it seems like it does not give proper result.

$zip = $r['zip'];
$lat1 = number_format((float)$r['latitude'],8,'.','');
$lon1 = number_format((float)$r['longitude'],8,'.','');
$d = $miles;
$r = 3959;
//compute max and min latitudes / longitudes for search square
 $latN = number_format((float)rad2deg(asin(sin(deg2rad($lat1)) * cos($d / $r) + cos(deg2rad($lat1)) * sin($d / $r) * cos(deg2rad(0)))),7,'.','');
 $latS =  number_format((float)rad2deg(asin(sin(deg2rad($lat1)) * cos($d / $r) + cos(deg2rad($lat1)) * sin($d / $r) * cos(deg2rad(180)))),7,'.','');
 $lonE =  number_format((float)rad2deg(deg2rad($lon1) + atan2(sin(deg2rad(90)) * sin($d / $r) * cos(deg2rad($lat1)), cos($d / $r) - sin(deg2rad($lat1)) * sin(deg2rad($latN)))),7,'.','');
 $lonW =  number_format((float)rad2deg(deg2rad($lon1) + atan2(sin(deg2rad(270)) * sin($d / $r) * cos(deg2rad($lat1)), cos($d / $r) - sin(deg2rad($lat1)) * sin(deg2rad($latN)))),7,'.','');

 $rs = "SELECT * FROM loc WHERE (latitude <= $latN AND latitude >= $latS AND longitude <= $lonE AND longitude >= $lonW) OR zip= '$szip' OR city = '$scity'  OR state = '$scity'";

Now I changed this code to below code:

$zip = $r['zip'];
$lat1 = number_format((float)$r['latitude'],8,'.','');
$lon1 = number_format((float)$r['longitude'],8,'.','');
$d = $miles;

 $rs = "SELECT zip, latitude, longitude,( 3959 * acos( cos( radians(".$lat1.") ) * cos( radians( latitude ) ) * cos( radians( longitude ) - radians(".$lon1.") ) + sin( radians(".$lat1.") ) * sin( radians( latitude ) ) ) ) AS distance FROM stores HAVING distance < $distance ORDER BY distance";

But it works only in local, in my live website it gives blank result. what is issue? & can any one suggest me good way to find location within some miles of radius?