Changeset 348 for trunk/mapbender/http/nav/alkisnav_fls.php
- Timestamp:
- 12/11/14 15:31:51 (9 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/mapbender/http/nav/alkisnav_fls.php
r334 r348 11 11 2014-09-03 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 12 12 2014-09-15 Bei Relationen den Timestamp abschneiden, mehr "endet IS NULL" 13 2014-12-11 Fehlerbehandlung bei Eingabe ungÃŒltiger Gemarkungsnummer. Tabellen pp_gemarkung und pp_flur verwenden. 13 14 */ 14 15 $cntget = extract($_GET); … … 68 69 // Teile der Zerlegung in global-Vars "$z..." 69 70 global $debug, $zgemkg, $zflur, $zzaehler, $znenner; 70 $arr = explode("-", $fskennz, 4); 71 $arr = explode("-", $fskennz, 4); // an den Trenn-Strichen aufteilen 71 72 $zgemkg=trim($arr[0]); 72 73 $zflur=h_hinten($arr[1]); … … 129 130 // Eine Zeile zu Gemarkung ausgeben 130 131 global $con, $gkz, $gemeinde, $epsg, $gfilter; 132 131 133 if ($gkgname == "") { // Falls Gem.-Name fehlt, in DB nachschlagen 132 $sql ="SELECT g.gemarkungsname FROM pp_gemarkung g WHERE g.gemarkung = $1 AND endet IS NULLLIMIT 1;";134 $sql ="SELECT g.gemarkungsname FROM pp_gemarkung g WHERE g.gemarkung = $1 LIMIT 1;"; 133 135 $v=array($gnr); 134 136 $res=pg_prepare("", $sql); … … 138 140 $gkgname=$row["gemarkungsname"]; 139 141 } 142 140 143 if ($gkgname == "") {$gkgname = "(unbekannt)";} 141 144 $gnam=htmlentities($gkgname, ENT_QUOTES, "UTF-8"); 142 145 if ($aktuell) {$cls=" aktuell";} 146 143 147 echo "\n<div class='gk".$cls."' title='Gemarkung'>"; 144 148 echo "\n\t\t<img class='nwlink' src='ico/Gemarkung.ico' width='16' height='16' alt='GKG' title='Gemarkung'>"; … … 353 357 354 358 function gg_head($gkgnr, $gkgaktuell) { 355 // Ãbergeordnete Zeilen (Head) fÃŒr Gemeinde und Gemarkung ausgeben 356 // Parameter = Gemarkungsnummer 359 // Kopf-Zeilen Gemeinde und Gemarkung ausgeben 360 // Parameter: Gemarkungsnummer, aktuell hervorzuhebende Zeile 361 // Return: true/false ob gefunden 362 357 363 $sqlh ="SELECT g.gemarkungsname, s.gemeinde, s.gemeindename FROM pp_gemarkung g 358 364 JOIN pp_gemeinde s ON g.gemeinde=s.gemeinde AND g.land=s.land WHERE g.gemarkung = $1 ;"; 365 359 366 $v=array($gkgnr); 360 367 $resh=pg_prepare("", $sqlh); 361 368 $resh=pg_execute("", $v); 369 362 370 if (!$resh) {echo "\n<p class='err'>Fehler bei Gemeinde und Gemarkung.</p>";} 363 $rowh = pg_fetch_array($resh); 364 $gmkg=$rowh["gemarkungsname"]; 365 $skey=$rowh["gemeinde"]; 366 $snam=$rowh["gemeindename"]; 367 zeile_gemeinde($skey, $snam, false); 368 zeile_gemarkung($gkgnr, $gmkg, $gkgaktuell); 369 return; 371 372 if ($rowh = pg_fetch_array($resh)) { 373 $gmkg=$rowh["gemarkungsname"]; 374 $skey=$rowh["gemeinde"]; 375 $snam=$rowh["gemeindename"]; 376 zeile_gemeinde($skey, $snam, false); 377 zeile_gemarkung($gkgnr, $gmkg, $gkgaktuell); 378 return true; 379 } else { 380 echo "\n<div class='gk' title='Gemarkung'>"; 381 echo "\n\t\t<img class='nwlink' src='ico/Gemarkung.ico' width='16' height='16' alt='GKG' title='Gemarkung'>"; 382 echo " Gemarkung ".$gkgnr." nicht gefunden!\n</div>"; 383 return false; 384 } 370 385 } 371 386 372 387 function EineGemarkung($AuchGemkZeile) { 373 388 // Kennzeichen bestehend nur aus Gemarkung-SchlÃŒssel wurde eingegeben 374 // Parameter = $zgemkg375 389 global $con, $gkz, $gemeinde, $epsg, $debug, $zgemkg; 376 390 $linelimit=120; // max.Fluren/Gemkg 377 391 378 392 // Head 379 if ($AuchGemkZeile) {gg_head($zgemkg, true);} 393 if ($AuchGemkZeile) { // Kopf davor ausgeben 394 if (! gg_head($zgemkg, true)) { 395 if ($debug >= 1) {echo "\n<p class='dbg'>Gem.-Gemkg.-Kopf abgebrochen</p>";} 396 return false; 397 } 398 } 399 380 400 // Body 381 $sql ="SELECT gemarkungsteilflur AS flur FROM ax_gemarkungsteilflur f382 WHERE gemarkung= $1 AND endet IS NULL ORDER BY gemarkungsteilflur LIMIT $2 ;";401 // Tabelle pp_flur verwenden um nur Fluren aufzulisten, die tatsÀchlich FlurstÃŒcke enthalten 402 $sql ="SELECT flurnummer AS flur FROM pp_flur f WHERE gemarkung= $1 ORDER BY flurnummer LIMIT $2 ;"; 383 403 $v=array($zgemkg, $linelimit); 384 404 $res=pg_prepare("", $sql); 385 405 $res=pg_execute("", $v); 406 386 407 if (!$res) {echo "\n<p class='err'>Fehler bei Flur.</p>";} 387 408 $zfl=0; … … 391 412 $zfl++; 392 413 } 414 393 415 // Foot 394 416 if($zfl == 0) { … … 399 421 echo "\n<p class='anz'>".$zfl." Fluren</p>"; 400 422 } 401 return ;423 return true; 402 424 } 403 425 … … 408 430 409 431 // Head 410 gg_head($zgemkg, false); 411 zeile_flur($zgemkg, $zflur, true, true); 432 if (gg_head($zgemkg, false)) { 433 zeile_flur($zgemkg, $zflur, true, true); 434 } else { 435 return false; 436 } 412 437 413 438 // Body … … 444 469 echo "\n<p class='anz'>".$zfs." Flurstücke</p>"; 445 470 } 446 return ;471 return true; 447 472 } 448 473 … … 454 479 455 480 // Head 456 gg_head($zgemkg, false); 457 zeile_flur($zgemkg, $zflur, true, true); 481 if (gg_head($zgemkg, false)) { 482 zeile_flur($zgemkg, $zflur, true, true); 483 } else { 484 return false; 485 } 458 486 459 487 // Body … … 486 514 echo "\n<p class='anz'>".$zfs." historische Flurstücke</p>"; 487 515 } 488 return ;516 return true; 489 517 } 490 518 … … 495 523 496 524 // Head 497 gg_head($zgemkg, false); 498 zeile_flur($zgemkg, $zflur, true, false); 525 if (gg_head($zgemkg, false)) { 526 zeile_flur($zgemkg, $zflur, true, false); 527 } else { 528 return false; 529 } 499 530 500 531 // Body … … 507 538 $sql.="y(st_transform(st_Centroid(f.wkb_geometry), ".$epsg.")) AS y "; 508 539 } 509 $sql.="FROM ax_flurstueck f "; 510 $sql.="WHERE f.gemarkungsnummer= $1 AND f.flurnummer= $2 AND f.zaehler= $3 "; 540 $sql.="FROM ax_flurstueck f WHERE f.gemarkungsnummer= $1 AND f.flurnummer= $2 AND f.zaehler= $3 "; 511 541 If ($znenner != "") {$sql.="AND f.nenner=".$znenner." ";} // wie prepared? 512 542 $sql.="AND endet IS NULL ORDER BY f.zaehler, f.nenner;"; … … 535 565 echo "\n</div>"; 536 566 } 537 return ;567 return true; 538 568 } 539 569 … … 543 573 544 574 // Head 545 gg_head($zgemkg, false); 546 zeile_flur($zgemkg, $zflur, true, false); 575 if (gg_head($zgemkg, false)) { 576 zeile_flur($zgemkg, $zflur, true, false); 577 } else { 578 return false; 579 } 547 580 echo "\n<hr>"; 548 581 … … 577 610 echo "\n<p class='err'>Fehler bei historischem Flurstück.</p>"; 578 611 if ($debug > 2) {echo "<p class='dbg'>SQL = '".$sql."'<br>Parameter: ".$fskzwhere."<p>";} 579 return ;612 return true; 580 613 } 581 614 … … 675 708 } else { // Die Formular-Eingabe interpretieren (kann auch ein Link sein) 676 709 $retzer=ZerlegungFsKennz($fskennz); 677 switch ($retzer) { 710 if ($debug >= 1) {echo "\n<p class='dbg'>Return Zerlegung: ".$retzer."</p>";} 711 switch ($retzer) { // Return der Zerlegung 678 712 case 0: // leere Eingabe 679 713 if ($gfilter == 1) { // Die GUI ist bereits auf EINE Gemeinde gefiltert
Note: See TracChangeset
for help on using the changeset viewer.