无法在数据库中保存多边形坐标

时间:2018-01-31 12:08:50

标签: php postgis

我想在PostGIS数据库中保存多边形的JSON坐标。 这是我的PHP代码 -

$coordinates  = ($_POST['Coordinates']);
$query   = "INSERT INTO table_name (column_name) VALUES
   (ST_SetSRID(ST_GeomFromGeoJSON ('{
                      ['".($coordinates) ."']
      }'), 4326))"
$success =  pg_query($conn,$query);

坐标为 -

{"type":"polygon","coordinates":[[[-97.53662109375,43.67581809328341],[-98.096923828125,42.60970621339408],[-96.427001953125,42.924251753870685],[-97.53662109375,43.67581809328341]]]}

但错误是 - “解析错误:语法错误,意外'$ success'(T_VARIABLE)” column_name是表中的多边形类型列。

请有人纠正我如何解决语法错误。 感谢。

1 个答案:

答案 0 :(得分:0)

由于语法错误,主要发生

T_VARIABLE 错误。您在$ 成功行之前错过了分号。请检查语法

$coordinates  = ($_POST['Coordinates']);
$query   = "INSERT INTO table_name (column_name) VALUES
   (ST_SetSRID(ST_GeomFromGeoJSON ('{
                      ['".($coordinates) ."']
      }'), 4326))";
$success =  pg_query($conn,$query);