Problem with ms_newShapeFileObj

Gianfranco Brescia ajfrank at ALICE.IT
Thu Sep 29 12:32:52 EDT 2005


I can not create a new point into my shape, can somebody help me?
This my code:

...
if ($dbval["CODICE_ALL"] && $dbval["COGNOME"] && $dbval["NUM_ALBO"])
  {
   $shpPath = "../webgis/dati/lombardia/polli/polli";
   $dbName = "../webgis/dati/lombardia/polli/polli.dbf";
   $poiClick = ms_newPointObj();
   $poiClick->setXY($xgeo, $ygeo);
   if ( !$dbf = dbase_open($dbName, 2) )
     {
       echo "Impossibile aprire $dbName\n";
       exit;
     }
   $nr = dbase_numrecords($dbf); // numero record del database
   $nr = $nr +1; // numero nuovo recordo
   $nf = dbase_numfields($dbf); // Numero campi database
   $shpFile = ms_newShapefileObj($shpPath, -2);
   $shpObj = ms_newShapeObj(MS_SHAPE_POINT);
   $lineObj = ms_newLineObj();
   $bSuc = $lineObj->add($poiClick);
   $bSuc =  $shpObj->add($lineObj);
   $bSuc =  $shpFile->addShape($shpObj);
   $nShapes = $shpFile->numshapes;
   dbase_add_record($dbf, array($nr, $dbval["CODICE_ALL"],$dbval["COGNOME"],
$dbval["NUM_ALBO"], $dbval["DATA"], $dbval["EST"], $dbval["NORD"]));
   $poiClick->free();
   $lineObj->free();
   $shpObj->free();
   $shpFile->free();
   dbase_close($dbf);
...

When I try to draw the map the error is:


Warning: [MapServer Error]: msDrawMap(): Failed to draw layer named 'polli'.
in /usr/local/apache2/htdocs/tpk/incphp/map.php on line 354

Warning: [MapServer Error]: msDBFGetItemIndex(): Invalid record number
24943. in /usr/local/apache2/htdocs/tpk/incphp/map.php on line 354

Fatal error: Call to a member function saveWebImage() on a non-object in
/usr/local/apache2/htdocs/tpk/incphp/map.php on line 376

Thank, ciao.



More information about the mapserver-users mailing list