2010-12-19 11 views
0

Ich verwende mapserver und openlayers, um ein GIS zu erstellen.Übergeben von Abfrageparametern an die Abfrageanweisung in mapserver

Ich verwende ein php mapscript und möchte die Parameter für eine Abfrage von einem HTML-Formular übergeben, so dass nur die Polygone, die die Abfrage erfüllen, in einem WFS-Layer hervorgehoben sind.

Ich bin ein Neuling mit Mapserver, openlayers und Anfänger bei php, so brauchen Hilfe beim Versuch, das oben genannte zu erreichen.

Ich sehe das folgende an der Spitze meiner php mapscript:

$request = ms_newowsrequestobj(); 

foreach ($_GET as $k=>$v) 
{$request->setParameter($k, $v);} 

, die ich vermute, ich einige Variablen auf die URL weitergeben können. Da ich ein Formular verwende, wird es stattdessen $_POST sein ... Richtig?

Ich habe 2 Fragen:

  1. Wie verwende ich den obigen Code die Parameter von einem HTML-Formular an die mapscript
  2. Wie ich diese an die Abfrage übergeben Anweisung dann kann passieren?

Hoffnung, was ich frage macht Sinn

Antwort

0

Es kann einfacher sein (und ein besseres Design) von MapScript zu und die GetFeature Fähigkeiten von WFS direkt verwenden.

Sie können einen Filter an den WFS-Layer übergeben (siehe http://mapserver.org/ogc/filter_encoding.html), und er kann das Feature und die Attribute zurückgeben, die Ihrer Abfrage entsprechen.

Vergewissern Sie sich, dass Ihr WFS korrekt konfiguriert ist -