Commit 161cda39821200df19c501940f229ddbd37951db
1 parent
45d6c874
Exists in
master
and in
7 other branches
Crítica no uso da função xdbase passando a usar a função dbase quando a extensão…
… dbase estiver instalada no PHP.
Showing
1 changed file
with
31 additions
and
17 deletions
Show diff stats
classesphp/classe_shp.php
| ... | ... | @@ -108,26 +108,27 @@ Nome do tema criado. |
| 108 | 108 | */ |
| 109 | 109 | function criaSHPvazio($tituloTema="") |
| 110 | 110 | { |
| 111 | - if(file_exists($this->locaplic."/pacotes/phpxbase/api_conversion.php")) | |
| 112 | - include_once($this->locaplic."/pacotes/phpxbase/api_conversion.php"); | |
| 113 | - else | |
| 114 | - include_once "../pacotes/phpxbase/api_conversion.php"; | |
| 115 | 111 | $diretorio = dirname($this->arquivo); |
| 116 | - $tipol = MS_SHP_POINT; | |
| 117 | 112 | $novonomelayer = nomeRandomico(); |
| 118 | 113 | $nomeshp = $diretorio."/".$novonomelayer; |
| 119 | - $l = criaLayer($this->mapa,MS_LAYER_POINT,MS_DEFAULT,"Ins","SIM"); | |
| 120 | - $novoshpf = ms_newShapefileObj($nomeshp, $tipol); | |
| 121 | - $novoshpf->free(); | |
| 122 | 114 | $def[] = array("ID","C","50"); |
| 123 | 115 | if(!function_exists("dbase_create")){ |
| 116 | + if(file_exists($this->locaplic."/pacotes/phpxbase/api_conversion.php")) | |
| 117 | + {include_once($this->locaplic."/pacotes/phpxbase/api_conversion.php");} | |
| 118 | + else | |
| 119 | + {include_once "../pacotes/phpxbase/api_conversion.php";} | |
| 124 | 120 | $db = xbase_create($nomeshp.".dbf", $def); |
| 125 | 121 | xbase_close($db); |
| 126 | 122 | } |
| 127 | - else{ | |
| 123 | + else | |
| 124 | + { | |
| 128 | 125 | $db = dbase_create($nomeshp.".dbf", $def); |
| 129 | 126 | dbase_close($db); |
| 130 | 127 | } |
| 128 | + $tipol = MS_SHP_POINT; | |
| 129 | + $l = criaLayer($this->mapa,MS_LAYER_POINT,MS_DEFAULT,"Ins","SIM"); | |
| 130 | + $novoshpf = ms_newShapefileObj($nomeshp, $tipol); | |
| 131 | + $novoshpf->free(); | |
| 131 | 132 | $novoshpf = ms_newShapefileObj($nomeshp.".shp", -2); |
| 132 | 133 | $novoshpf->free(); |
| 133 | 134 | if($tituloTema == "") |
| ... | ... | @@ -365,11 +366,6 @@ $para - linha|poligono |
| 365 | 366 | */ |
| 366 | 367 | function shpPT2shp($locaplic,$para) |
| 367 | 368 | { |
| 368 | - //para manipular dbf | |
| 369 | - if(file_exists($this->locaplic."/pacotes/phpxbase/api_conversion.php")) | |
| 370 | - include_once($this->locaplic."/pacotes/phpxbase/api_conversion.php"); | |
| 371 | - else | |
| 372 | - include_once "../pacotes/phpxbase/api_conversion.php"; | |
| 373 | 369 | if(!$this->layer){return "erro";} |
| 374 | 370 | $this->layer->set("template","none.htm"); |
| 375 | 371 | $diretorio = dirname($this->arquivo); |
| ... | ... | @@ -390,7 +386,17 @@ $para - linha|poligono |
| 390 | 386 | $temp = strtoupper($ni); |
| 391 | 387 | $def[] = array($temp,"C","254"); |
| 392 | 388 | } |
| 393 | - $db = xbase_create($nomeshp.".dbf", $def); | |
| 389 | + //para manipular dbf | |
| 390 | + if(!function_exists("dbase_create")) | |
| 391 | + { | |
| 392 | + if(file_exists($this->locaplic."/pacotes/phpxbase/api_conversion.php")) | |
| 393 | + {include_once($this->locaplic."/pacotes/phpxbase/api_conversion.php");} | |
| 394 | + else | |
| 395 | + {include_once "../pacotes/phpxbase/api_conversion.php";} | |
| 396 | + $db = xbase_create($nomeshp.".dbf", $def); | |
| 397 | + } | |
| 398 | + else | |
| 399 | + {$db = dbase_create($nomeshp.".dbf", $def);} | |
| 394 | 400 | $dbname = $nomeshp.".dbf"; |
| 395 | 401 | $reg = array(); |
| 396 | 402 | $novoshpf = ms_newShapefileObj($nomeshp.".shp", $tipol); |
| ... | ... | @@ -412,10 +418,18 @@ $para - linha|poligono |
| 412 | 418 | foreach ($items as $ni) |
| 413 | 419 | {$reg[] = "-";} |
| 414 | 420 | $novoshpf->addShape($shape); |
| 415 | - xbase_add_record($db,$reg); | |
| 421 | + if(!function_exists("dbase_create")) | |
| 422 | + { | |
| 423 | + xbase_add_record($db,$reg); | |
| 424 | + xbase_close($db); | |
| 425 | + } | |
| 426 | + else | |
| 427 | + { | |
| 428 | + dbase_add_record($db,$reg); | |
| 429 | + dbase_close($db); | |
| 430 | + } | |
| 416 | 431 | $novoshpf->free(); |
| 417 | 432 | $this->layer->close(); |
| 418 | - xbase_close($db); | |
| 419 | 433 | //cria o novo layer |
| 420 | 434 | $layer = criaLayer($this->mapa,MS_LAYER_LINE,MS_DEFAULT,"",$metaClasse="SIM"); |
| 421 | 435 | $layer->set("data",$nomeshp); | ... | ... |