MapServer banner Home | Products | Issue Tracker | FAQ | Download
en it es zh_cn de el fr id sq tr

Templating

Author:Frank Koormann
Contact:frank.koormann at intevation.de
Author:Jeff McKenna
Contact:jmckenna at gatewaygeomatics.com
Revision:$Revision$
Date:$Date$

Introduction

Les modèles (template) sont utilisés :

  • to define the look of a MapServer CGI application interface
  • pour présenter les résultats d’une requête.
  • to create custimised output (see Template-Driven Output)

Ils guident la présentation des résultats, que ce soit une interrogation ou une carte, à l’utilisateur. Les modèles sont presque toujours des fichiers HTML malgré le fait qu’ils puissent aussi être une URL (c’est à dire http://www.somewhere.com/[ATTRIBUTE]/info.html). Les modèles d’URL peuvent seulement être utilisés avec les résultats d’une simple QUERY ou d’un ITEMQUERY, ainsi de nombreuses substitutions définies plus bas ne sont pas disponibles pour eux. Des interfaces de déplacement/zoom utilise un fichier de modèle seul tandis les requêtes compliquées nécessitent souvent plusieurs modèles. Les modèles utilise souvent du JavaScript pour améliorer l’interface basique.

Remarques

  • Les modèles doivent contenir la chaîne magique ‘mapserver template’ dans la première ligne du modèle. Souvent, cela prend la forme d’un commentaire HTML, javascript ou XML. Cette ligne n’est pas écrite dans le client. La chaîne magique n’est pas sensible à la casse.

  • Tous les paramètres CGI peuvent être référencés dans des substitutions de modèles, les paramètres spéciques de MapServer aussi bien que ceux définis par l’utilisateur. En principe, les paramètres sont gérés par le MapServer 1:1. Cette fonctionnalité est essentielle pour implémenter les applications MapServer.

    La référence ci-dessous liste seulement les chaînes de substitutions de modèle spécial qui sont nécessaires pour obtenir une information modifiée par MapServer, c’est à dire une nouvelle échelle, des résultats d’interrogation, etc.

  • Les chaînes de substitution des modèles sont sensibles à la casse.

  • Les substitutions des éléments attributaires doivent avoir la même casse que le nom des éléments dans le fichier dbase.

  • ArcView et ArcInfo produisent généralement des fichiers dbase avec des noms d’éléments qui sont tous en majuscules. L’encodage approprié des URL (c’est à dire ‘ ‘ à ‘+’) est appliqué quand les templates sont des URL.

  • Quelques substitutions sont aussi disponibles avec une forme échappée (c’est à dire une URL encodée).

Comme un exemple, ceci est nécessaire quand on génère des liens à l’intérieur d’un template. Cela est susceptible de passer l’étendue de la carte courante “mapextent” à un nouvel appel MapServer. [mapext] est substitué par un jeu de coordonnées “coin bas gauche” et “haut droite” séparés par des espaces. Comme cela casserais l’URL, [mapext_esc] est substitué par un jeu qui est correctement encodé.

Format

Les modèles sont simplement des fichiers HTML simples ou des chaînes d’URL qui contiennent des caractères spéciaux qui sont remplacés par mapserv chaque fois que le modèle est lu. la substitution simple autorise des informations comme les couches actives ou l’étendue spatiale qui doit être passée de l’utilisateur de mapserv et inversement. Le plus souvent les nouvelles valeurs sont envoyées vers des variables de formulaire qui seront passées à nouveau. La liste des caractères spéciaux et des variables de formulaires est donnée ci-dessous. Les modèles HTML peuvent inclure à peu près n’importe quoi en incluant des appels JavaScript et Java.

Dans les fichiers HTML, les valeurs d’attributs peuvent être entre guillemets (“”). L’écriture des valeurs d’attributs dans des guillemets vous permet de de définir des caractères spéciaux dans des valeurs qu’habituellement vous ne pourriez pas utiliser normalement (c’est à dire : ],=,” et espace). Pour écrire un guillemet simple dans une valeur d’attribut, utilisez juste deux guillemets (“”).

Général

[date]

Renvoie la date (d’après l’horloge du serveur web). Le format par défaut est le même que celui utilisé par les logs communs de Apache, qui ressemble à ceci :

01/Dec/2010:17:34:58 -0800

Arguments disponibles :

  • format=

    Une chaîne formattée comme supportée par la function standard C strftime(). comme exemple, le format par défaut est défini comme :

    [date format="%d/%b/%Y:%H:%M:%S %z"]
  • tz=

    Le fuseau horaire à utiliser pour la date retournée. Par défaut, c’est “local”. Les valeurs valides sont :

    • “gmt”

      La date renvoyée sera en temps de Greenwich (GMT)

    • “local”

      Renvoie le temps du serveur web pour son fuseau horaire local.

    En plus ou bien de manière alternative, les chaînes du format strftime %z et %Z permettent de renvoyer le décalage de temps du fuseau horaire ou son nom.

[version]
Numéro de version de Mapserver.
[id]
Identifiant de session unique. l’identifiant peut être passé via un formulaire mais est plus généralement généré par le logiciel. Dans ce cas, l’identifiant est la concaténation du temps UNIX (ou équivalent NT) et de l’identifiant du processus. A moins que vous obteniez plus de requêtes en une seconde que le système a d’identifiants de processus, alors l’identifiant peut être considéré comme unique. ;->
[host]
Nom d’hôte du serveur web.
[port]
Port que le serveur web écoute.
[post or get variable name], [post or get variable name_esc]

Le contenu de n’importe quelle variable passée à MapServer, qu’elles soient ou non utilisées, peut être renvoyée de cette manière. Une utilisation peut être d’avoir un utilisateur qui définisse un titre de carte ou un style de flèche Nord dans composeur de carte interactif. Le système se moque des valeurs, mais elles peuvent être réellement importantes pour créer une sortie finale, c’est à dire que si vous spécifié un paramètre CGI comme mavaleur=...., vous pouvez accéder à celui-ci dans le fichier de template avec [mavaleur].

Aussi disponible comme une version “échappée”

[web_meta data key],[web_meta data key_esc]

Accès aux métadonnées de l’objet web (c’est à dire [web_projection])

Aussi disponible comme une version “échappée”

[errmsg], [errmsg_esc]

Sortie courante de la pile d’erreurs. Les différents messages d’erreurs sont délimités par des are delimited by semi-colons.

Aussi disponible comme une version “échappée”

Référence de fichier

[img]

Chemin (relatif à la racine du document) de la nouvelle image, juste le nom de l’image si le paramètre IMAGE_URL n’est pas défini dans le mapfile.

Dans un modèle d’interface de carte, [img] est substitué avec le chemin de l’image carte. Dans un modèle de résultats d’interrogation, il est substitué avec le chemin vers l’image de la “querymap” (si un objet QUERYMAP est défini dans le Mapfile).

[ref]
Chemin (relatif à la racine du document) de la nouvelle image de la carte de référence.
[legend]

Chemin (relatif à la racine du document) de la nouvelle image de légende générée par MapServer.

Depuis la version 3.5.1, un nouveau modèle de légende HTML est fourni par MapServer. Si un modèle est défini dans le Mapfile, la chaîne [legend] est remplacée par la légende traitée. Voir la référence Légendes HTML avec MapServer pour les détails.

[scalebar]
Chemin (relatif à la racine du document) de la nouvelle image d’échelle.
[queryfile]
Chemin vers le fichier de requête (si savemap a été défini comme un paramètre CGI).
[map]
Chemin vers le fichier .map (si savemap a été défini comme un paramètre CGI).

Géométrie de l’image

[center]
Centre calculé de l’image en pixels. Utile pour définir la variable de formulaire imgxy quand la taille de la carte change.
[center_x], [center_y]
Coordonnées X ou Y du centre de l’image calculé en pixels.
[mapsize], [mapsize_esc]

Taille de l’image courante en colonne et en ligne (séparée par des espaces).

Aussi disponible comme une version “échappée”

[mapwidth], [mapheight]
Largeur ou hauteur de l’image courante.
[scaledenom]
Echelle de l’image courante. La valeur exacte n’est pas appropriée pour les informations utilisateur mias essentielle pour certaines applications. La valeur peut être arrondie c’est à dire en utilisant du JavaScript ou un traitement côté serveur.
[scale] - deprecated
Depuis la version de MapServer 5.0, le paramètre approprié à utiliser est [scaledenom] à la place. L’échelle [scale] dépréciée est l’échelle de l’image courante. La valeur exacte n’est pas appropriée pour les informations utilisateur mias essentielle pour certaines applications. La valeur peut être arrondie c’est à dire en utilisant du JavaScript ou un traitement côté serveur.
[cellsize]
Taille d’un pixel dans l’image courante en unité de carte. Utile pour les outils de mesure de distance dans les interfaces utilisateurs.

Géométrie de la carte

[mapx], [mapy]
Coordonnées X et Y du clic de souris.
[mapext], [mapext_esc]

Etendue complète “mapextent” (séparée par des espaces).

Aussi disponible comme une version échappée. (mapext_esc est dépréciée dans MapServer 5.2. Vous devriez utiliser l’argument “escape=” à la place)

Le modèle par défaut [mapext] retourne les coordonnées dans le format : mixx miny maxx maxy

Arguments disponibles :

  • escape=

    Echappe les coordonnées retournées. La valeur par défaut est “none”. Les valeurs valides sont :

    • “url”

      Utilise les codes d’échappement d’URL pour encoder les coordonnées retournées.

    • “none”

      Ne pas échapper

  • expand=

    Aggrandit les bornes des étendues d’une valeur spécifique. Spécifié dans les coordonnées de carte. Par exemple, [mapext] pourrait retourner :

    123456 123456 567890 567890

    et [mapext expand=1000] retournera par conséquent :

    122456 122456 568890 568890
  • format=

    Format des coordonnées. La valeur par défaut est “$minx $miny $maxx $maxy”. Par exemple, pour ajouter des virgules aux coordonnées, vous devriez utiliser :

    [mapext format="$minx,$miny,$maxx,$maxy"]
  • precision=

    Le nombre de décimales pour la sortie des coordonnées (par défaut, la valeur est 0).

[minx], [miny], [maxx], [maxy]
Coordonnées X ou Y minimum / maximum de la nouvelle étendue de carte.
[dx], [dy]

La différences des coordonnées X ou Y minimum / maximum de la nouvelle étendue de carte.

Utile pour créer des étendues “cachable” (c’est à dire 0 0 dx dy) avec les légendes ou les barres d’échelle

[rawext], [rawext_esc]

Etendue de carte mapextent brute, c’est l’étendue avant de l’adapter à la taille de fenêtre (séparée par des espaces). Dans les cas où l’entrée vient de la boîte image imgbox (via Java ou autre), rawext se réfère aux coordonnées imgbox transformées en unités de carte. Utile pour la construction de requête spatiale.

Aussi disponible en version échappée. (rawext_esc est déprécié dans MapServer 5.2. Vous devriez utiliser l’argument “escape=” à la place)

Le modèle par défaut [rawext] retourne les coordonnées dans le format : mixx miny maxx maxy

Arguments disponibles :

  • escape=

    Echappe les coordonnées retournées. La valeur par défaut est “none”. Les valeurs valides sont :

    • “url”

      Utilise les codes d’échappement d’URL pour encoder les coordonnées retournées.

    • “none”

      Ne pas échapper

  • expand=

    Aggrandit les bornes des étendues d’une valeur spécifique. Spécifié dans les coordonnées de carte. Par exemple, [rawext] pourrait retourner :

    123456 123456 567890 567890

    et [rawext expand=1000] retournera par conséquent :

    122456 122456 568890 568890
  • format=

    Format des coordonnées. La valeur par défaut est “$minx $miny $maxx $maxy”. Par exemple, pour ajouter des virgules aux coordonnées, vous devriez utiliser :

    [rawext format="$minx,$miny,$maxx,$maxy"]
  • precision=

    Le nombre de décimales pour la sortie des coordonnées (par défaut, la valeur est 0).

[rawminx], [rawminy], [rawmaxx], [rawmaxy]
Coordonnées X ou Y minimum / maximum de la carte brute / l’étendue de recherche.

Les substitutions suivantes sont seulement disponibles si MapServer a été compilé avec le support de PROJ et qu’une PROJECTION est définie dans le Mapfile.

[maplon], [maplat]
Valuer de longitude / latitude du clic de souris. Disponible seulement si la projection est activée.
[mapext_latlon], [mapext_latlon_esc]

Etendue complète “mapextent” (séparée par des espaces). Disponible seulement si la projection est activée.

Aussi disponible comme une version échappée. (mapext_latlong_esc est dépréciée dans MapServer 5.2. Vous devriez utiliser l’argument “escape=” à la place)

Le modèle par défaut [mapext_latlon] retourne les coordonnées dans le format : mixx miny maxx maxy

Arguments disponibles :

  • escape=

    Echappe les coordonnées retournées. La valeur par défaut est “none”. Les valeurs valides sont :

    • “url”

      Utilise les codes d’échappement d’URL pour encoder les coordonnées retournées.

    • “none”

      Ne pas échapper

  • expand=

    Aggrandit les bornes des étendues d’une valeur spécifique. Spécifié dans les coordonnées de carte. Par exemple, [mapext_latlon] pourrait retourner :

    123456 123456 567890 567890

    et [mapext_latlon expand=1000] retournera par conséquent :

    122456 122456 568890 568890
  • format=

    Format des coordonnées. La valeur par défaut est “$minx $miny $maxx $maxy”. Par exemple, pour ajouter des virgules aux coordonnées, vous devriez utiliser :

    [mapext_latlon format="$minx,$miny,$maxx,$maxy"]
  • precision=

    Le nombre de décimales pour la sortie des coordonnées (par défaut, la valeur est 0).

[minlon], [minlat], [maxlon] [maxlat]
Valuer de longitude ou latitude minimum / maximum de l’étendue de carte mapextent. Disponible seulement si la projection est activée.
[refext], [refext_esc]

Etendue de la carte de référence (séparée par des espaces)

Ce modèle a été ajouté dans la version 4.6 suite à une demande d’amélioration. Voir le fil de discussion dans `ticket #1102 MapServer`_ pour des cas d’utilisation potentiels.

Aussi disponible comme une version échappée. (refext_esc est dépréciée dans MapServer 5.2. Vous devriez utiliser l’argument “escape=” à la place)

Le modèle par défaut [refext] retourne les coordonnées dans le format : mixx miny maxx maxy

Arguments disponibles :

  • escape=

    Echappe les coordonnées retournées. La valeur par défaut est “none”. Les valeurs valides sont :

    • “url”

      Utilise les codes d’échappement d’URL pour encoder les coordonnées retournées.

    • “none”

      Ne pas échapper

  • expand=

    Aggrandit les bornes des étendues d’une valeur spécifique. Spécifié dans les coordonnées de carte. Par exemple, [refext] pourrait retourner :

    123456 123456 567890 567890

    et [refext expand=1000] retournera par conséquent :

    122456 122456 568890 568890
  • format=

    Format des coordonnées. La valeur par défaut est “$minx $miny $maxx $maxy”. Par exemple, pour ajouter des virgules aux coordonnées, vous devriez utiliser :

    [refwext format="$minx,$miny,$maxx,$maxy"]
  • precision=

    Le nombre de décimales pour la sortie des coordonnées (par défaut, la valeur est 0).

Couche

[layers] | [layers_esc]

Toutes les couches actives délimitées avec un espace. Utilisé pour une requête “POST”

Aussi disponible comme une version “échappée”

[toggle_layers] | [toggle_layers_esc]

Liste de toutes les couches qui peuvent être activées/désactivées, c’est à dire toutes les couches définies dans le Mapfile dont le status n’est pas couramment à “default”.

Aussi disponible comme une version “échappée”

[layername_check | select]
Utilisé pour rendre les couches persistantes pendant une session de création de carte. La chaîne est remplacée avec le mot-clé “checked”, “selected” ou “” si “layername” est activée. Layername estle nom de la couche tel qu’il apparaît dans le Mapfile. Ne fonctionne pas pour les couches default.
[layername_meta data key]
Accès aux métadonnées de couche (c’est à dire [streets_build], le tiret bas est essentiel)

Zoom

[zoom_minzoom to maxzoom_check|select]

Utilisé pour rendre le facteur de zoom persistant. Les valeurs de zoom peuvent prendre des valeurs entre -25 et 25 par défaut. La chaîne est remplacée avec le mot-clé HTML “checked”, “selected” ou “” en fonction de la valeur de zoom courante.

C’est à dire si le zoom est 12, un [zoom_12_select] est remplacé avec “selected”, tandis qu’un [zoom_13_select] dans le même fichier de modèle HTML ne l’est pas.

[zoomdir_-1|0|1_check|select]
Utilisé pour rendre la direction de zoom persistante. Utilise “check” avec un contrôle radio ou select avec une liste de sélection. Voir la démo pour un exemple. La chaîne est remplacée avec le mot-clé HTML “checked”, “selected” ou “” en fonction de la valeur de zoomdir.

Requête

Les substitutions suivantes sont seulement disponibles quand on traite le modèle comme le résultat d’une requête.

[shpext], [shpext_esc]

Etendue de la forme courante avec un tampon de 5 pourcents. Disponible seulement quand on traite les résultats de requête.

Le modèle par défaut [shpext] retourne les coordonnées dans le format : mixx miny maxx maxy

Arguments disponibles :

  • escape=

    Echappe les coordonnées retournées. La valeur par défaut est “none”. Les valeurs valides sont :

    • “url”

      Utilise les codes d’échappement d’URL pour encoder les coordonnées retournées.

    • “none”

      Ne pas échapper

  • expand=

    Aggrandit les bornes des étendues d’une valeur spécifique. Spécifié dans les coordonnées de carte. Par exemple, [shpext] pourrait retourner :

    123456 123456 567890 567890

    et [shpext expand=1000] retournera par conséquent :

    122456 122456 568890 568890
  • format=

    Format des coordonnées. La valeur par défaut est “$minx $miny $maxx $maxy”. Par exemple, pour ajouter des virgules aux coordonnées, vous devriez utiliser :

    [shpext format="$minx,$miny,$maxx,$maxy"]
  • precision=

    Le nombre de décimales pour la sortie des coordonnées (par défaut, la valeur est 0).

[shpminx], [shpminy], [shpmaxx], [shpmaxy]
Coordonnées minimum / maximum X ou Y de l’étendue de la carte. Disponible seulement quand on traite les résultats de requête.
[shpmid]
Milieu de l’étendue de la forme courante. Disponible seulement quand on traite les résultats de requête.
[shpmidx], [shpmidy]
Coordonnées X ou Y du milieu de l’étendue de la forme courante. Disponible seulement quand on traite les résultats de requête.
[shpidx]
Valeur de l’index de la forme courante. Disponible seulement quand on traite les résultats de requête.
[shpclass]
Valeur de l’index de classe “Classindex” de la forme courante. Disponible seulement quand on traite les résultats de requête.
[shpxy formatting options]

La liste des coordonnées de la forme, avec options de formatage de liste, particulièrement utile pour le SVG.

Le modèle par défaut [shpxy] retourne une liste séparée par des virgules de coordonnées délimitée par des espaces (c’est à dire x1 y1, x2 y2, x3 y3).

Disponible seulement quand on traite les résultats de requête.

Attributs disponibles (h = header (en-tête), f=footer (pied de page), s=separator (séparateur)):

  • buffer=,

    Taille du tampon, actuellement la seule unité disponible est le pixel. Par défaut, sa valeur vaut 0.

  • centroid=

    Est-ce que le centroide de la forme est utilisé? true ou false (insensible à la casse). Par défaut, la valeur est false.

  • cs=

    Séparateur de coordonnées. Par défaut, c’est ”,”.

  • irh=, irf=, orh=, orf=

    Caractères à mettre avant les anneaux internes de (irh) et après ceux de (irf), et avant les anneaux externes (des polygones à trous) de (orh) et après ceux de (orf). Par défaut, leurs valeurs sont “”.

    Note

    A l’intérieur de chaque polygone, l’anneau externe est toujours envoyé en premier, suivi par les anneaux internes.

    Si ni irh ni orh ne sont définis, les anneaux sont renvoyées comme des “parties” en utilisant ph/pf/ps.

  • ph=, pf=, ps=

    Caractères à mettre avant (ph) et après (pf) et séparateurs entre les morceaux d’entité (ps) (c’est à dire les anneaux des multigéométries). Par défaut, leurs valeurs sont ph=””, pf=”” et ps=” ”.

  • precision=

    Le nombre de décimales pour la sortie des coordonnées. Par défaut, la valeur est 0.

  • proj=

    La définition de de laprojection en sortie pour les coordonnées, une valeur spéciale de l‘“image” sera convertie en coordonnées image. Par défaut, la valeur est none.

  • scale=, scale_x=, scale_y=

    Facteur de mise à l’échelle pour les coordonnées : les deux axes (scale), l’axe x (scale_x) et l’axe y (scale_y). Par défaut, leurs valeurs sont 1.0.

  • sh=, sf=

    Caractères à mettre avant (sh) et après (sf) une entité. Par défaut, leurs valeurs sont “”.

  • xh=, xf=

    Caractères à mettre avant (xh) et après (xf) les coordonnées x. Leurs valeurs par défaut sont xh=”” et xf=”,”).

  • yh= yf=

    Caractères à mettre avant (yh) et après (yf) les coordonnées y. Par défaut, leurs valeurs sont “”.

Comme un exemple simple :

[shpxy xh="(" yf=")"] will result in: (x1 y1),(x2 y2),(x3 y3)

et un exemple plus comliqué de sortie KML pour les multipolygones qui peuvent potentiellement avoir des trous (notez que les paramètres doivent tous être sur une seule ligne) :

<MultiGeometry>
    <Point>
      <coordinates>[shplabel proj=epsg:4326 precision=10],0</coordinates>
    </Point>
    [shpxy ph="<Polygon><tessellate>1</tessellate>" pf="</Polygon>" xf=","
     xh=" " yh=" " yf=",0 " orh="<outerBoundaryIs><LinearRing><coordinates>"
     orf="</coordinates></LinearRing></outerBoundaryIs>"
     irh="<innerBoundaryIs><LinearRing><coordinates>"
     irf="</coordinates></LinearRing></innerBoundaryIs>" proj=epsg:4326
     precision=10]
</MultiGeometry>
[tileindex]
La valeur d’index de la tuile courante. Si aucune tuile n’est utilisée pour la forme courante, elle est remplacée par “-1”. Disponible seulement quand on traite les résultats de requête.
[item formatting options]

Un élément “item” de table attributaire, avec des options de formatage de liste. L’attribut de nom “name” est requis.

Disponible seulement quand on traite les résultats de requête.

Attributs disponibles :

  • name =

    Le nom d’un attribut, insensible à la casse. (requis)

  • precision =

    Le nombre de décimales à utiliser pour les données numériques. L’utilisation de ce paramètre forcera l’affichage comme un nombre et pourra mener à des résultats imprévisibles avec des données non numériques.

  • pattern =

    Expression régulière pour comparer la valeur d’un élément avec. La balise est renvoyée seulement s’il y a une correspondance.

  • uc =

    Définit cet attribut à “true” pour convertir la valeur de l’attribut en majuscule.

  • lc =

    Définit cet attribut à “true” pour convertir la valeur de l’attribut en minuscule.

  • commify =

    Définit cet attribut à “true” pour ajouter des virgules à une valeur numérique. A nouveau, seulement utile avec des données numériques.

  • escape =

    L’échappement par défaut est pour le HTML, mais vous pouvez échapper pour une inclusion dans une URL (=url), ou ne rien échapper du tout (=none).

  • format =

    Une chaîne formatée utilisée pour renvoyer la valeur d’attribut. Le jeton “$valeur” est utilisé pour placer la valeur dans une présentation plus complexe. Par défaut, il renvoie seulement la valeur.

  • nullformat =

    Chaîne à renvoyer si la valeur d’attribut est NULL, vide ou ne correspond pas au pattern (si défini). S’il n’est pas défini et qu’aucune de ces conditions est vérifiée, la balise de l’élément est remplacée avec une chaîne vide.

Comme un exemple simple :

[item name="area" precision="2" commify="2" format="Area is $value"]
[attribute name],[attrribute name_esc],[attribute item name_raw]

Nom d’attribut pour la table de données d’une couche interrogée. Seules les attributs pour les couches de requête active sont accessibles. La casse doit être la même que celle stocké dans le fichier de données. ArcView, par exemple, n’utilise que les majuscules sur les noms des champs shapefile. Disponible seulement quand on traite les résultats de requête.

Par défaut, les attributs sont encodés spécialement pour la représentation HTML. En plus, la version échappée (pour l’usage dans les URL) comme celle brute est disponible.

[Join nom_attribut nom],[Join nom_attribut nom_echappee], [Join nom_attribut nom_brute]

Jointures une à une : en premier le nom de la jointure (comme spécifiée dans le Mapfile) doit être donné, ensuite, les champs des tables peuvent être accédés de manière similaire aux données attributaires des couches. Disponible seulement quand on traite les résultats de requête.

Par défaut, les attributs sont encodés spécialement pour la représentation HTML. En plus, la version échappée (pour l’usage dans les URL) comme celle brute est disponible.

[join_Join name]
Jointures une à plusieurs : la variante la plus complexe.Si lle type de jointure est multiple (une à plusieurs), le modèle est remplacé par le jeu d’en-tête, fichier de modèle et pied de page spécifié dans le Mapfile.
[metadata_meta data key], [metadata_meta data key_esc]

Accès aux métadonnées des couches interrogées (c’est à dire [metadata_projection])

Aussi disponible comme une version “échappée”

For query modes that allow for multiple result sets, the following string substitutions are available. For FEATURESELECT and FEATURENSELECT modes the totals a re adjusted so as not to include the selection layer. The selection layer results ARE available for display to the user.

[nr]
Nombre total de résultats. Utile dans les en-têtes et les pieds de page. Disponible seulement quand on traite les résultats de requête.
[nl]
Nombre de couches retournant des résultats. Utile dans les en-têtes et les pieds de page. Disponible seulement quand on traite les résultats de requête.
[nlr]
Nombre total de résultats dans la couche courante. Utile dans les en-têtes et les pieds de page. Disponible seulement quand on traite les résultats de requête.
[rn]
Nombre résultat à l’intérieur de toutes les couches. Commence à 1. Utile dans les en-têtes et les pieds de page. Disponible seulement quand on traite les résultats de requête.
[lrn]
Nombre résultat à l’intérieur de la couche courante. Commence à 1. Utile dans les modèles d’interrogation. Disponible seulement quand on traite les résultats de requête.
[cl]
Nom de couche courante. Utile dans les en-têtes et les pieds de page de couche. Disponible seulement quand on traite les résultats de requête.

Modèle exemple

Un petit exemple pour donner une idée de comment travailler avec des modèles. Notez qu’il couvre les modèles Mapserver spécifiques (c’est à dire le [map], [mapext]) et les modèles définis par l’utilisateur (c’est à dire [htmlroot] ou [program]) utilisé pour stocker les paramètres de l’application.

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
<!-- MapServer Template -->
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
       "http://www.w3.org/TR/html4/transitional.dtd">
<html>
  <head>
    <title>MapServer Template Sample</title>
  </head>

  <body>
    MapServer Template Sample<br>

    <!-- The central form the application is based on. -->
    <form method="GET" action="[program]">

    <!-- CGI MapServer applications are server stateless in principle,
         all information must be "stored" in the client. This includes
         some basic settings as below.
         The example is based on the pan and zoom test suite:
         http://maps.dnr.state.mn.us/mapserver_demos/tests36/           -->
      <input type="hidden" name="map" value="[map]">
      <input type="hidden" name="imgext" value="[mapext]">
      <input type="hidden" name="imgxy" value="149.5 199.5">
      <input type="hidden" name="program" value="[program]">
      <input type="hidden" name="htmlroot" value="[htmlroot]">
      <input type="hidden" name="map_web" value="[map_web]">

      <!-- A table for minimal page formatting. -->
      <table border=0 cellpadding=5>
      <tr>
        <!-- First column: Map and scale bar -->
        <td align=center>
          <!-- The map -->
          <input type="image" name="img" src="[img]"
                 style="border:0;width:300;height:400">
          <br>
          <!-- The scale bar-->
          <img src="[scalebar]" alt="Scale Bar">
        </td>

        <!-- Second column: Zoom direction, Legend and Reference -->
        <td valign=top>
          <!-- Zoom direction -->
          <b>Map Controls</b><br>
          Set your zoom option:<br>
          <select name="zoom" size="1">
            <option value="2" [zoom_2_select]> Zoom in 2 times
            <option value="1"  [zoom_1_select]> Recenter Map
            <option value="-2" [zoom_-2_select]> Zoom out 2 times
          </select>
          <br>

          <!-- Legend -->
          <b>Legend</b><br>
          <img src="[legend]" alt="Legend"><br><br><br><br>

          <!-- Reference map -->
         <input type="image" name="ref" src="[ref]"
                style="border:0;width:150;height:150">
        </td>
      </tr>
      </table>

    </form>

  </body>
</html>

Navigation

About
Products
Community
Development
Downloads
Documentation
FAQ

Current Table Of Contents