2012-06-18 52 views
2

我正在使用cgi-bin,並使用Postgres數據庫中的一些數據顯示地圖。MapServer cgi-bin從查詢字符串中獲取值並連接到Postgres查詢

但是,我需要引入一個輸入,用戶可以選擇一個日期,這個日期將過濾數據庫的結果。

我有輸入,我通過URL(get方法)發送參數,但我不知道如何從cgi-bin查詢字符串獲取此參數以及如何將參數值連接到數據庫查詢。

這是映射文件的代碼部分:在DATA

LAYER 
DATA "the_geom from (select * from 
    vista_puntos where date > <DATE_VAR_FROM_QUERY_STRING>) as subquery 
    using unique id_valor using srid=4326" 
+0

你可能想看看geomoose,因爲它是具有這種功能集成...好運的框架! – NicoTek

回答

0

使用select查詢使用FILTER * MAPSERV後 *創建凡過濾

條款

例子

DATA "geom from roads" 
    FILTER "type='%road1%' or type='%road2%'" 

     CLASS 
      NAME "Road Type1" 
      EXPRESSION ('[type]' = 'type1') 
      STYLE 
       SIZE 10 
       COLOR 255 0 0 
      END 
     END 

     CLASS 
      NAME "Road Type2" 
      EXPRESSION ('[type]' = 'type2') 
      STYLE 
       SIZE 10 
       COLOR 0 255 0 
      END 
     END 

查詢字符串格式是這樣的:..mapserv.exe?map=mapfile&road1=type1&road2=type2