[postgis-users] Problem with postgis querybypoint in mapserver-php

Guillermo Tamburini Beliveau guitambe at topo.upv.es
Mon May 17 00:09:21 PDT 2010


Hi,

first, I would like to apologize for possible confussions with my english or my
limitated knowledge of programming and the explanations on this.

And second, sorry if I insist, but I trided two times in the mapserver list and
now, the second time in this, and nobody responds me. please, if somebody knows
anything about my question, please say something. Thank you.

I would ask to the list if someone knows the reason of a problem that I'm
having with the php-mapscript methods for the query methods in the postgis
layers.

Indistinctly for querybypoint or querbyrectangle, my code (different versions of
it), works perfectly with shapes, but it always fails with the postgis layers.
When calling to the shapeindex member of the ResultCacheMemberObj obtained, it
always returns 0, as is contrary to what happens with the shapes, where it
always returns the correct shapeindex. Then, it is impossible to acces to the
desidered feature, and as you know, this are usal and simple actions.

May I have to add more columns to the select of the .map file for getting the
features atributes like in the example (I don't think so)?

    DATA "geom FROM puntos using unique gid"
#    DATA "geom FROM (select gid , nombre, tramo, geom from puntos) as foo using
unique geom"
#    DATA "geom FROM (select * from puntos) as foo using unique gid"

Or there is some paramter in the configuration files of mapserver or php that I
have to change.

There is the code of the function:

function CercaPunto($point,$map,$radius) {

      $qlayer = $map->getLayerByName('trazado');
     $qlayer->set("tolerance",$radius);
     @$qlayer->queryByPoint($point, MS_MULTIPLE, $radius);
     $numResults = $qlayer->getNumResults();
     if ($numResults != 0) {
          for ($i = 0; $i < $numResults; $i++) {
              $query_result = $qlayer->getResult($i);
               $Lista_ele[$i] = $query_result->shapeindex; // Here is the error
with postgres
          }
     } else {
          $valido =0;
          $Lista_ele = "";
     }
     return $Lista_ele;
} // end CercaPunto


Thank you very much.

Guillermo Tamburini



_______________________________________________
postgis-users mailing list
postgis-users at postgis.refractions.net
http://postgis.refractions.net/mailman/listinfo/postgis-users

----- Fin del mensaje reenviado -----






More information about the postgis-users mailing list