1

我正在构建一个从用户位置搜索以查找附近经销商的地图。

我在理解如何在 sql 语句中使用变量时遇到了一些麻烦。我正在使用 javascript 制作位置,然后发布坐标以使用 php 进行查询。我的代码如下

$sql = "SELECT dealer_name, phone, street_number, route, locality, administrative_area_level_1, postal_code, website, latitude, longitude, ( 3959 * acos( cos( radians('".latitude."') ) * cos( radians( lat ) ) * cos( radians( lng ) - radians('".longitude."') ) + sin( radians('".latitude."') ) * sin( radians( lat ) ) ) ) AS distance FROM dealers WHERE distance < '".miles."' ORDER BY distance LIMIT 0 , 10";

这是我分配位置变量的地方

navigator.geolocation.getCurrentPosition(function(position) {

    latitude = position.coords.latitude;
    longitude = position.coords.longitude;
4

1 回答 1

2

什么语言?您已经标记了 JavaScript,但就像提到的评论之一一样。我当然希望您不是在 JavaScript 中构建 SQL。

您应该将参数传递到服务器端(可能是 AJAX 调用),然后根据您使用的语言,适当地构建 SQL 查询。

请参阅 Java 示例:http ://www.mkyong.com/jdbc/jdbc-preparestatement-example-select-list-of-the-records/

于 2013-07-18T22:07:08.567 回答