[ka-Map-users] Problem with Search in KAMAP with Postgis

Melanie Ritzau MelanieRitz78 at web.de
Sun Jun 17 04:29:58 EDT 2007


I tested Kumars kaSearch.php from 
http://lists.maptools.org/pipermail/ka-map-users/attachments/20070615/8d56b836/kaSearch.obj

but  the search function still doesn't give me any results from PostGIS-Layers. And with the patched kaSearch.php I also don't get search-results from shapefiles (that worked before with unpatched kaSearch.php )

My PostGIS-layer is drawn correctly and also query-function works - only kaSearch doesn't work. If I replace the PostGIS-data with a shapefile (with same data) the (original,unpatched) kaSearch works.

I don't get any errors - so I have no idea what is going wrong.

Mel




> -----Ursprüngliche Nachricht-----
> Von: Lorenzo Becchi <lorenzo at ominiverdi.com>
> Gesendet: 15.06.07 19:47:47
> An: ka-map-users at lists.maptools.org
> Betreff: Re: [ka-Map-users] Problem with Search in KAMAP with Postgis


> 
> Thank you Kuros,
> I've uploaded your patch on CVS.
> I've read the code and make sense to me but I've not the time to test it 
> in this days.
> 
> please, send back feedback if it works fine or not
> ciao
> Lorenzo
> 
> 
> 
> 
> 
> Kumar wrote:
> >
> > I found the same problem and made it work with couple of small fix and 
> > it works for me now.
> >
> > 1.    I found that the parsing part of the search string was inside a 
> > for loop for each layer hence $searchstring = "\"".$szSearchfield."~* 
> > '".$searchstring."'\""; kept expanding for each for loop. I fixed that by
> >
> >    $psearch = $searchstring; *// Around line 67*
> >
> >          if($oLayer->connectiontype == MS_POSTGIS){ // *Around Line 144*
> >
> >                $searchstring = "($szSearchfield ilike '%$psearch%')";
> >
> >        } else {
> >
> >                $searchstring = "\"".$szSearchfield."~* '".$psearch."'\"";
> >
> >          }
> >
> > 2.    Also modified the search string for postgis layer little bit. 
> > Also included in code above.
> >
> > 3.    Around line 180 where the heading of the field were retrieved, 
> > *oResultCache* was grabbing the result using the layer index, so it 
> > there was just 1 result and the layer index was 3 it produced a error. 
> > I fixed that by changing such that it grabs the first result
> >
> > *Orginal*
> >
> >    if ($totR) {
> >
> >          $oResultCache = $oLayer->getResult($i);
> >
> >          $oShape = $oLayer->getShape($oResultCache->tileindex, 
> > $oResultCache->shapeindex);
> >
> >  
> >
> > *         Modified*
> >
> > *         *if ($totR) {
> >
> >                   $oResultCache = $oLayer->getResult(0);
> >
> >                   $oShape = 
> > $oLayer->getShape($oResultCache->tileindex, $oResultCache->shapeindex);
> >
> >  
> >
> >  
> >
> > I was working from version 1.5. I have also attached the php file 
> > along. But I think it is more efficient using within() function rather 
> > than querybyshape.
> >
> >  
> >
> > - kumar
> >
> >  
> >
> > -----Original Message-----
> > From: ka-map-users-bounces at lists.maptools.org 
> > [mailto:ka-map-users-bounces at lists.maptools.org] On Behalf Of Lorenzo 
> > Becchi
> > Sent: Friday, June 15, 2007 12:26 PM
> > To: ka-map-users at lists.maptools.org
> > Subject: [ka-Map-users] Problem with Search in KAMAP with Postgis
> >
> >  
> >
> > > I will hazard a guess (although I have not checked the code) that the
> >
> > > search
> >
> > > function is using the MapScript queryByShape method, which doesn't
> >
> > > work when
> >
> > > using PostGIS for some reason. You can easily use PostGIS to perform a
> >
> > > similar function using within() which when proceeded by an extent query
> >
> > > actually seems to be more efficient than queryByShape anyway.
> >
> >  
> >
> > Thanks Chris,
> >
> > who would be so kind to make a patch for this?
> >
> >  
> >
> > ciao
> >
> > Lorenzo
> >
> >  
> >
> >  
> >
> > _______________________________________________
> >
> > ka-Map-users mailing list
> >
> > ka-Map-users at lists.maptools.org
> >
> > http://lists.maptools.org/mailman/listinfo/ka-map-users
> >
> >  
> >
> _______________________________________________
> ka-Map-users mailing list
> ka-Map-users at lists.maptools.org
> http://lists.maptools.org/mailman/listinfo/ka-map-users
> 


__________________________________________________________________________
Erweitern Sie FreeMail zu einem noch leistungsstärkeren E-Mail-Postfach!		
Mehr Infos unter http://produkte.web.de/club/?mc=021131




More information about the ka-Map-users mailing list