我有一个包含公司及其邮政编码地址的数据库。我创建了一个函数,可以为我提供一定范围内的公司名称。但是,我的 MYSQL 非常糟糕,查询部分无法正常工作。我从这个网站研究了这个功能,如果正确执行,应该可以工作。我一直收到一个错误,说 results2 是错误的。有人可以帮我弄清楚我在 $sql = 之后的语法有什么问题吗?
function zipcodeRadius($lat, $lon, $radius)
{
$radius = $radius ? $radius : 20;
$lat = intval($lat);
$lon = intval($lon);
$radius = intval($radius);
$sql = "SELECT company,( 3959 * ACOS(COS(RADIANS($lat) ) * COS(RADIANS( lat ) ) * COS( RADIANS( longitude ) - RADIANS($lon) ) + SIN(RADIANS($lat) ) * SIN(RADIANS( lat ) ) ) ) AS distance FROM COMPANY WHERE distance < 50 ORDER BY distance";
$result2 = mysql_query($sql);
while($row2= mysql_fetch_array($result2))
{
echo $row2[company]. " - ". $row2[zip];
echo "<br/>";
}
}