[Gfoss] MapServer-Pmapper: filtro parametrico

PiaMic piamic a comune.fano.ps.it
Mar 4 Ott 2011 09:16:16 CEST


Com'è andata a finire? Con un lieto fine, naturalmente.
Vi rigiro la soluzione del caso, nero su bianco dal nostro programmatore, Mattia Torelli.
Grazie a tutti quelli che generosamente ci hanno dato delle dritte...

Pia Miccoli
tecnico Gis
Ufficio Sic
Comune di Fano
tel. 0721-887746
  _____  

From: MatTor [mailto:mattor a comune.fano.ps.it]
To: piamic a comune.fano.ps.it
Sent: Tue, 04 Oct 2011 09:11:07 +0200
Subject: MAPSERVER

      Il problema riguardava il punto di inclusione del codice ed il tipo di variabile utilizzata.
Inizialmente il codice che abbiamo aggiunto (in globals.php) e che non funzionava, era il seguente:

$datafiltro = $_REQUEST['datafiltro'];
if(isset($datafiltro)){
    $layer = $map->getLayerByName('edifici1');
    $layer->setFilter ("([DAL] <= $datafiltro AND [AL] >= $datafiltro )");
}

in realtà non andava perché in fase di inizializzazione globals.php veniva invocato da diverse risorse, tra cui js_config.php che lo istanziava prima ancora che gli venisse passato il parametro datafiltro.

Per risolvere il problema, abbiamo sostituito $_REQUEST['datafiltro'] con la variabile di sessione $_SESSION['DATAFILTRO'] in globals.php, sostituendo il codice precedente con questo:

if(isset($_SESSION['DATAFILTRO'])){
    $layer = $map->getLayerByName('edifici1');
    $layer->setFilter("([DAL] <= $_SESSION[DATAFILTRO] AND [AL] >= $_SESSION[DATAFILTRO] )");
}

ed inoltre abbiamo incluso l'assegnamento 

$_SESSION['DATAFILTRO'] = $_REQUEST['datafiltro'];

nel file map.phtml che farebbe da entry point del programma.
In questo modo ci siamo accertati che si portasse dietro la variabile a qualsiasi livello di chiamata.
  


Comune di Fano - www.comune.fano.ps.it
---------------------------------------------------------------------------------------------------------------
Questo messaggio è destinato unicamente alle persone sopra indicate e le informazioni contenute sono da considerarsi strettamente riservate. Se avete ricevuto questo messaggio per errore, siete pregati di rispedirlo al mittente. Grazie.

-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.gfoss.it/pipermail/gfoss/attachments/20111004/8924e7fc/attachment.html>


Maggiori informazioni sulla lista Gfoss