[Mapserver-users] PHP/Mapscript: Searching for Attributes
Frank Broniewski
Frank.Broniewski at mnha.etat.lu
Thu Jun 10 04:04:34 PDT 2004
Hello all
I'm still trying to find a way to search for attributes of a shapefile
and center on the found locations or items. To be more precise, I will
describe my data. I have a point shapefile with location names. Through
a web interface, I want to enable the user to search for a location by
name.
The entry in my .map file for the point-shp is as followed:
LAYER
Name "Bezeichnung"
Data maps/toponyme
Status ON
Type Point
LabelItem "toponyme"
ClassItem "Nature"
CLASS
Name "Communes"
Expression "Commune"
Color 255 0 0
LABEL
Color 25 25 25
ShadowColor 225 225 225
ShadowSize 1 1
Type TRUETYPE
Font arial
Size 10
AntiAlias TRUE
Position CC
Partials FALSE
END
END
END
1) First thing is, I didn't enter a TEMPLATE expression, because I don't
know how to enter it with the correct values. As my homepage is created
dynamically like:
$image = $map->draw();
$image_url = $image->saveWebImage();
When you enter a .html file as a parameter to TEMPLATE, how do I deal
with this as I use a .php? Looking at the the gmap - demo, they use a
nonexisting file as TEMPLATE parameter (ttt_query.html). But how can I
use the values provided to the .html file?
2) In my .php file I used the queryByAttribute method to query my layer.
With the kind help of this list I managed to make it perform my query.
But I'm not sure, if I used it correctly for my purpose. The code is as
followed:
$mySearchLayer = $MapObj->getLayerByName("Toponyme");
if (
$mySearchLayer->queryByAttributes("TOPONYME","BERTRANGE","MS_SINGLE") ==
"MS_SUCCESS" ) {
$myErgQuery = $MapObj->drawQuery();
$QueryImage = $myErgQuery->saveWebImage("MS_PNG",1,1,0);
} else {
$fehler = "Nicht gefunden";
echo $fehler;
}
It returns me, whatever searchparameter I enter, the whole map without
marked points. The query thing is keeping me busy quite a few days now
and I'm getting more and more confused. I did a search on the
mailing-list archives but the few informations provided there just don't
get me on the right path, as I seem to lack the ability to understand
the methods like querybyattribute right.
Can some kind reader show me in a general manner how I can perform an
attribute query on a shapefile and get some coordinate values returned?
Many thanks in advance
Frank Broniewski
Musée National d'Histoire et d'Art
Section Préhistoire / Projet EPC
Tél: +352 260 281-21
241, Rue de Luxembourg
L-8077 Bertrange
More information about the MapServer-users
mailing list