每个人。请允许我简单介绍一下。
例如:我的地图服务器使用CGI模式。我有一个名为 的 shapefile 'us_states.shp'
,其中有一列'state_name'
。如果我编写了正确的'.map'
文件和'.html'
模板,当我单击“表单”标签中的地图图像时,我应该会得到一个美国州的特定名称。为什么会发生这种情况?因为 '.html' 模板有一个字符串:[state_name]。
现在,我做了一些改变:
- 空间数据在postgreSQL数据库中,还有一个名为
'state_name'
; - 我正在使用PHP来显示查询图。
那么,我怎样才能得到 的值'state_name'
呢?如何改变点击状态的颜色?
我的进度:
- 一个。我可以使用 postgreSQL 显示来自“.map”文件的原始地图图像,还可以显示图像中所有州的名称;
- 湾。
'QUERYMAP'
“.map”文件中已经存在一个简单的段落; - C。我将这些代码添加到我的“.php”文件中:
$point->setXY($img_x, $img_y);
$map->queryByPoint($point, 'MS_SINGLE', -1);
$image=$map->drawQuery();
但是,首先,图像的坐标不是数据库的坐标,数据库中的坐标也不是纬度或经度!我需要改造它们吗?其次,方法'queryByPoint'
无法获取状态名称,需要我使用'queryByAttributes'
吗?如何使用它?
我不知道……我真的不知道……我需要你的帮助。