php - Jquery DataTables 可排序距离列

标签 php javascript datatables jquery-ui-sortable

所以我有 jQuery DataTables 设置并运行良好。 我的最终目标是允许用户使用 Google 地点自动完成功能,更新其位置,然后在刷新时将“可排序”距离列添加到我的 DataTables 表中。

计划是在谷歌自动完成的文本输入旁边有一个按钮,上面写着使用这个地址,一旦用户使用自动完成搜索并找到一个地址,然后按下按钮,我想(可能)发送他们到加载页面几秒钟,而我们

1)读取文本字符串,将其格式化以与谷歌地理编码API一起使用,又名

“澳大利亚维多利亚州克兰本” ---->“克兰本+维多利亚+澳大利亚”

2)将其插入地理编码请求

3)从结果json中提取纬度和经度值,并将它们分配给变量

现在是最困难的部分,我正在考虑使用一些 php 来计算用户之间的距离(纬度,经度),以及 DataTable 表中的每个条目,该表使用外键填充了 sql 数据(所有 sql 行都有经纬度数据)

然后我正在考虑将所述条目发送到 xml,只是这次每个条目都会有一个额外的值“DISTANCE”。

粗略地说,使用一些巧妙的代码,整个事情不会花费一秒钟,然后用 xml 填充新的 DataTable 表,只是这次它包含一个距离列,其中包含每行的距离值,粗略地说,该列是可排序的,没有任何数据表黑客什么的。

那么我是愚蠢的,还是这是一个好主意,有更简单的方法吗?

我真的很想得到一些答案,谢谢。

最佳答案

这实际上可能很困难(取决于您的数学专业知识),因为它需要使用球面几何。您可以考虑使用 API:

https://developers.google.com/maps/documentation/distancematrix/

如果您想尝试自己做,您可能需要使用为此编写的类,例如:

http://www.phpclasses.org/browse/file/36294.html

第二个选项可能更好,因为 Google 对其 API 有限制。一旦掌握了计算距离的方法,查询数据库和创建 XML 就变得很简单。我不知道为什么你想使用 XML 而不是 json,但是 PHP 函数 json_encode() 可能会让它更简单,而且 DataTables 支持它。

关于php - Jquery DataTables 可排序距离列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14341318/

相关文章:

php - 如何在 UPS API 中指定货件是否为住宅货件?

php - 从数据库格式化日期

javascript - 带标签的传单簇标记(标记标签)

javascript - 检测包含 http 请求的 forEach 循环结束?

javascript - 匹配前面没有字符的模式

javascript - JavaScript 的 Fetch 可以用来更新 Rails Controller 中的参数值吗?

jquery - 如何向 JQuery DataTable 的行添加数据属性

php - 如何播种自引用表 Laravel 5.1

php - 无法使用ajax更新页面

search - Powerapps:将搜索文本拆分为单个字符串,现在我只需要在图库中显示包含其中一个字符串的项目