寻找远距离的问题



它始终将输出作为bool(false)。我有数据库的表列名LocationLongLocationLat

$ulat = $data['ULat'];
$ulong = $data['ULong'];
$sql = "SELECT PostId, (3959 * acos(cos(radians($ulat)) * cos(radians(LocationLat))
    * cos(radians(LocationLong) - radians($ulong)) + sin(radians($ulat))
    * sin(radians(lLocationLatat)))) AS distance
    FROM VehicleDetails HAVING distance < 250 ORDER BY distance LIMIT 0, 20";
$query = mysqli_query($con, $sql);
var_dump($query);

您没有考虑您的查询可能会失败。从:

开始
$query = mysqli_query($con, $sql) or die('query fails');
var_dump($query);

尝试以下方法:

$ulat = $data['ULat'];
$ulong = $data['ULong'];
$sql = "SELECT PostId, (3959 * acos(cos(radians($ulat)) * cos(radians(LocationLat))
    * cos(radians(LocationLong) - radians($ulong)) + sin(radians($ulat))
    * sin(radians(lLocationLatat)))) AS distance
    FROM VehicleDetails HAVING distance < 250 ORDER BY distance LIMIT 0, 20";
if( $query = !mysqli_query($con, $sql ) )
{
    echo "Error occurred! :" . mysqli_error( $con );
}
var_dump($query);

不要忽略错误检查!

您将获得任何发生的错误的描述,以便您可以修复它而无需猜测。

happycoding

最新更新