【发布时间】:2014-11-03 10:08:13
【问题描述】:
1.- 用户在 Web 应用中绘制多边形。
2.- 当用户点击保存时,我想将数据保存在 postgresql 数据库中。
多边形坐标有问题...
多边形在文本字段中坐标值,如下所示:
(13.068776734357694, -65.50735473632812),(6.795535025719505, -62.123565673828125),(7.928674801364048, -70.78079223632812)
当用户在地图上绘图时,我得到了它们
google.maps.event.addListener(drawingManager,'polygoncomplete',function(polygon) {
// complete functions
var coordinates = (polygon.getPath().getArray());
$("#coordinates").val(coordinates);
});
这么好,当我在表单中传递这些值并尝试将它们保存在数据库中时,我收到了这个错误:
致命错误:未捕获异常 'PDOException' 并带有消息 'SQLSTATE[XX000]:内部错误:7 错误:解析错误 - 无效几何提示:“(1”
PHP
$stmt = $link->prepare("INSERT INTO industrias.industrias (rif,nombre,geom) VALUES (:rif,:nombre,:coor)");
$stmt->execute(array(':rif'=>$_POST["rif"],':nombre'=>$_POST["nombre_empresa"],':coor'=>$_POST["coordinates"]));
问题 1:
还有其他函数可以以适合列类型geometry (Polygon,4326)的其他模式获取这些坐标?
问题 2:
我可以在 SQL STATEMENT 中使用一些 postgis 函数来使其工作吗?与 WKT 或其他东西有关吗?
【问题讨论】:
标签: php postgresql google-maps-api-3