第2节:CGI变量和用户界面

到目前为止,我们只在创建地图时查看了 Mapfile 。在创建Web映射应用程序时,我们通常打算制作用户(应用程序的用户)可以交互更改的映射。也就是说,用户应该能够更改地图的内容(或其中的信息)。为了实现这种交互性,我们使用mapserver HTML模板。

HTML模板

MapServer HTML模板本质上是一个带有一些特定于MapServer的标记的HTML文件。这些标记是mapserver cgi变量,用方括号“[]”括起来。当mapserver cgi程序处理应用程序时,它首先解析查询字符串和mapfile,并生成必要的输出。其中一些输出将需要写入HTML模板文件,您还必须使用web template关键字(或单独的HTML初始化文件)在mapfile中指定该文件。CGI程序将用正确的值替换HTML模板中的所有变量,然后再将其发送回Web浏览器。如果要在Web浏览器中直接查看HTML模板,则不会呈现任何映射,而是会得到空白图像和其他垃圾。

变量

MapServer为Web映射提供了几个变量:您在示例1.9中看到的“img”变量只是一个示例。最初作为映射接口的一部分设计的核心CGI变量很少,但实际上所有mapfile参数都可以定义为变量。可以找到对mapserver cgi变量的最终引用 here .

我们还可以定义自己的变量,mapserver将把这些变量传递给我们的应用程序。例如,我们可以创建一个名为“root”的变量来表示本教程的根目录,“root”的值将是“/tutorial”。当mapserver cgi程序处理我们的html模板时,它将用“/tutorial”替换他“[根]”标记的每个实例。您将在下面的每个示例中看到这一点。

实例

所以,让我们为我们的应用程序构建一个交互式界面…


Back to Section 1 index | Proceed to Section 3