Changeset 132 for trunk/var/www/info/alkis/alkislage.php
- Timestamp:
- 11/30/11 14:10:13 (12 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/var/www/info/alkis/alkislage.php
r131 r132 6 6 7 7 Version: 8 11.07.2011 Ersetzen $self durch $_SERVER['PHP_SELF']."?" 9 25.07.2011 PostNAS 0.5/0.6 Versionen unterscheiden 10 26.07.2011 debug, SQL nur im Testmodeus ausgeben 11 22.11.2011 Felder ax_gebaeude.description und .individualname sind entfallen 12 13 ToDo: Entschluesseln Kreis usw. 8 22.11.2011 9 Felder ax_gebaeude.description und .individualname sind entfallen 10 GebÀude als Tabelle 11 Link auf neues Modul "alkishaus". 12 Sonderfall PostNAS-Vers. 05 entfernt. 13 Kennzeichen im Balken verkÃŒrzt. 14 30.11.2011 import_request_variables 15 16 ToDo: 17 - Entschluesseln Kreis usw. 18 - Das Balken-Kennzeichen noch kompatibel machen mit der Eingabe der Navigation fÃŒr Adresse 14 19 */ 15 //ini_set('error_reporting', 'E_ALL & ~ E_NOTICE');16 20 session_start(); 17 $gkz=urldecode($_REQUEST["gkz"]);21 import_request_variables("G"); 18 22 require_once("alkis_conf_location.php"); 19 if ($auth == "mapbender") { // Bindung an Mapbender-Authentifizierung 20 require_once($mapbender); 21 } 23 if ($auth == "mapbender") {require_once($mapbender);} 22 24 include("alkisfkt.php"); 25 switch ($ltyp) { 26 case "m": // "Mit HsNr" = Hauptgebaeude 27 $tnam = "ax_lagebezeichnungmithausnummer"; break; 28 case "p": // "mit PseudoNr" = Nebengebaeude 29 $tnam = "ax_lagebezeichnungmitpseudonummer"; break; 30 case "o": //"Ohne HsNr" = Gewanne oder Strasse 31 $tnam = "ax_lagebezeichnungohnehausnummer"; break; 32 default: 33 $ltyp = "m"; 34 $tnam = "ax_lagebezeichnungmithausnummer"; break; 35 } 36 if ($id == "j") {$idanzeige=true;} else {$idanzeige=false;} 37 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n"; 38 if ($keys == "j") {$showkey=true;} else {$showkey=false;} 23 39 ?> 24 40 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> … … 39 55 <body> 40 56 <?php 41 $gmlid=urldecode($_REQUEST["gmlid"]);42 $ltyp=urldecode($_REQUEST["ltyp"]); // 3 Arten Lage-Typ43 switch ($ltyp) {44 case "m": // "Mit HsNr" = Hauptgebaeude45 $tnam = "ax_lagebezeichnungmithausnummer";46 break;47 case "p": // "mit PseudoNr" = Nebengebaeude48 $tnam = "ax_lagebezeichnungmitpseudonummer";49 break;50 case "o": //"Ohne HsNr" = Gewanne oder Strasse51 $tnam = "ax_lagebezeichnungohnehausnummer";52 break;53 default:54 $ltyp = "m";55 $tnam = "ax_lagebezeichnungmithausnummer";56 break;57 }58 $id = isset($_GET["id"]) ? $_GET["id"] : "n";59 if ($id == "j") {60 $idanzeige=true;61 } else {62 $idanzeige=false;63 }64 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n";65 if ($keys == "j") {66 $showkey=true;67 } else {68 $showkey=false;69 }70 57 $con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass); 71 58 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n"; 72 59 73 // L agebezeichnung60 // L a g e b e z e i c h n u n g 74 61 $sql ="SELECT s.bezeichnung AS snam, k.bezeichnung AS knam, g.bezeichnung AS gnam, l.land, l.regierungsbezirk, l.kreis, l.gemeinde, l.lage, "; 75 62 switch ($ltyp) { … … 89 76 $sql.="LEFT JOIN ax_kreisregion k ON l.land=k.land AND l.regierungsbezirk=k.regierungsbezirk AND l.kreis=k.kreis "; 90 77 $sql.="LEFT JOIN ax_lagebezeichnungkatalogeintrag s "; 91 92 if ($dbvers == "05") { // bis PostNAS 0.5 93 // Besonderheit: unterschiedliche Feldformate und Fuellungen!!! 94 // +++ Nach vollstaendiger Umstellung diesen Programmteil entfernen 95 switch ($ltyp) { 96 case "o": //"Ohne HsNr" 97 // hier beide .lage als Char(5) 98 // in ax_lagebezeichnungKatalogeintrag mit fÃŒhrenden Nullen 99 // in ax_lagebezeichnungOhneHausnummer jedoch ohne fÃŒhrende Nullen 100 $sql.="ON l.land=s.land AND l.regierungsbezirk=s.regierungsbezirk AND l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=trim(leading '0' from s.lage) "; 101 break; 102 default: // "Mit HsNr" + "mit PseudoNr" 103 // ax_LagebezeichnungKatalogeintrag.lage ist char, 104 // ax_LagebezeichnungMitHausnummer.lage ist integer, 105 // ax_lagebezeichnungMitPseudonummer.lage ist integer, 106 $sql.="ON l.land=s.land AND l.regierungsbezirk=s.regierungsbezirk AND l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND to_char(l.lage, 'FM00000')=s.lage "; 107 break; 108 } 109 } else { // ab PostNAS 0.6 char(5) mit fuehr.Nullen 110 $sql.="ON l.land=s.land AND l.regierungsbezirk=s.regierungsbezirk AND l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage "; 111 } 78 // ab PostNAS 0.6: Feld "lage" char(5) mit fuehr.Nullen 79 $sql.="ON l.land=s.land AND l.regierungsbezirk=s.regierungsbezirk AND l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage "; 112 80 $sql.="WHERE l.gml_id= $1;"; 113 81 … … 130 98 $snam =$row["snam"]; //Strassennamen 131 99 $unver=$row["unverschluesselt"]; // Gewanne 132 $kennz=$land."-".$regbez."-".$kreis."-".$gem."-".$lage."-"; 100 // $kennz=$land."-".$regbez."-".$kreis."-".$gem."-".$lage."-"; 101 $kennz=$gem."-".$lage."-"; // ToDo: Kompatibel machen als Eingabe in in Navigation/Adresse 102 133 103 switch ($ltyp) { 134 104 case "m": // "Mit HsNr" … … 235 205 // ax_Flurstueck >zeigtAuf> ax_LagebezeichnungOhneHausnummer 236 206 switch ($ltyp) { 237 case "m": 238 $bezart="weistAuf"; 239 break; 240 case "o": 241 $bezart="zeigtAuf"; 242 break; 207 case "m": $bezart="weistAuf"; break; 208 case "o": $bezart="zeigtAuf"; break; 243 209 } 244 210 $sql="SELECT g.gemarkungsnummer, g.bezeichnung, "; … … 270 236 while($rowf = pg_fetch_array($resf)) { 271 237 $flur=str_pad($rowf["flurnummer"], 3, "0", STR_PAD_LEFT); 272 273 //$fskenn=str_pad($rowf["zaehler"], 5, "0", STR_PAD_LEFT); 274 //if ($rowf["nenner"] != "") {$fskenn.="/".str_pad($rowf["nenner"], 3, "0", STR_PAD_LEFT);} 275 276 $fskenn=$rowf["zaehler"]; // Bruchnummer (ohne fuehrende Nullen) 277 if ($rowf["nenner"] != "") { 278 $fskenn.="/".$rowf["nenner"]; 279 } 280 238 $fskenn=$rowf["zaehler"]; // Bruchnummer 239 if ($rowf["nenner"] != "") {$fskenn.="/".$rowf["nenner"];} 281 240 $flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m²"; 282 241 echo "\n<tr>"; 283 242 echo "\n\t<td>"; 284 if ($showkey) { 285 echo "<span class='key'>".$rowf["gemarkungsnummer"]."</span> "; 286 } 243 if ($showkey) {echo "<span class='key'>".$rowf["gemarkungsnummer"]."</span> ";} 287 244 echo $rowf["bezeichnung"]."</td>"; 288 245 echo "\n\t<td>".$flur."</td>"; … … 293 250 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; 294 251 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n"; 295 if ($idanzeige) {echo "&id=j";}296 if ($showkey) {echo "&showkey=j";}252 if ($idanzeige) {echo "&id=j";} 253 if ($showkey) {echo "&showkey=j";} 297 254 echo "' title='Flurstücksnachweis'>Flurstück <img src='ico/Flurstueck_Link.ico' width='16' height='16' alt=''></a>"; 298 255 echo "\n\t\t</p>\n\t</td>"; … … 310 267 $whereclaus="WHERE land= $1 AND regierungsbezirk= $2 AND kreis= $3 AND gemeinde= $4 AND lage= $5 "; 311 268 $url=$_SERVER['PHP_SELF']."?gkz=".$gkz."&id=".$id."&gmlid="; // Basis 269 if ($idanzeige) {$url.="&id=j";} 270 if ($showkey) {$url.="&showkey=j";} 312 271 313 272 switch ($ltyp) { … … 366 325 367 326 // G E B A E U D E 368 369 // Mittelfristig ist zu ueberlegen, ob hier weitere Einzelheiten dargestellt werden,370 // oder ob nicht besser ein eigenes Modul alkisgebaeude.php dies uebernehmen sollte.371 // Dort sollten auch diese Relationen abgebildet werden:372 // ax_gebaeude >gehoertZu> ax_gebaeude (ringförmige Verbindung GebÀudekomplex)373 // ax_gebaeude (umschliesst) ax_bauteil374 // ax_gebaeude >gehoert> ax_person (Ausnahme)375 376 327 if ($ltyp <> "o") { // OhneHsNr linkt nur Flurst. 377 328 echo "\n\n<a name='geb'></a><h3><img src='ico/Haus.ico' width='16' height='16' alt=''> Gebäude</h3>"; 378 329 echo "\n<p>mit dieser Lagebezeichnung.</p>"; 379 330 switch ($ltyp) { 380 case "p": 381 $bezart="hat"; 382 break; 383 case "m": 384 $bezart="zeigtAuf"; 385 break; 386 } 387 // $sql ="SELECT g.gml_id, g.gebaeudefunktion, g.description, g.name, g.lagezurerdoberflaeche, g.bauweise, g.anzahlderoberirdischengeschosse AS aog, g.grundflaeche, g.individualname, g.zustand, "; 388 $sql ="SELECT g.gml_id, g.gebaeudefunktion, g.name, g.lagezurerdoberflaeche, g.bauweise, g.anzahlderoberirdischengeschosse AS aog, g.grundflaeche, g.zustand, "; 331 case "p": $bezart="hat"; break; 332 case "m": $bezart="zeigtAuf"; break; 333 } 334 $sql ="SELECT g.gml_id, g.gebaeudefunktion, g.name, g.bauweise, g.grundflaeche, g.zustand, "; 389 335 $sql.="round(area(g.wkb_geometry)::numeric,2) AS flaeche, h.bauweise_beschreibung, u.bezeichner "; 390 336 $sql.="FROM ax_gebaeude g "; … … 392 338 $sql.="LEFT JOIN ax_gebaeude_bauweise h ON g.bauweise = h.bauweise_id "; 393 339 $sql.="LEFT JOIN ax_gebaeude_funktion u ON g.gebaeudefunktion = u.wert "; 340 // +++ JOIN Zustand 394 341 $sql.="WHERE v.beziehung_zu= $1 AND v.beziehungsart= $2 ;"; 395 342 $v = array($gmlid,$bezart); … … 400 347 if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";} 401 348 } 349 echo "\n<table class='geb'>"; 350 echo "\n<tr>"; // T-Header 351 echo "\n\t<td class='head' title='Gebäudename'>Name</td>"; 352 echo "\n\t<td class='head fla' title='Fläche'>Fläche</td>"; 353 echo "\n\t<td class='head' title='Gebäudefunktion ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des Gebäudes'>Funktion</td>"; 354 echo "\n\t<td class='head' title='Bauweise (Schlüssel und Beschreibung)'>Bauweise</td>"; 355 echo "\n\t<td class='head' title='Zustand (Schlüssel und Beschreibung)'>Zustand</td>"; 356 echo "\n\t<td class='head nwlink' title='Link zu kompletten Hausdaten'>Haus</td>"; 357 echo "\n</tr>"; 358 // T-Body 402 359 $i=0; 403 while($row = pg_fetch_array($res)) { // Only You! 404 echo "<p>"; 405 if ($idanzeige) {linkgml($gkz, $row["gml_id"], "Gebäude");} 406 echo "</p>"; 407 echo "\n<table>"; 408 409 echo "\n\t<tr><td>Funktion:</td><td>"; 410 if ($showkey) { 411 echo "<span class='key'>".$row["gebaeudefunktion"]."</span> "; 412 } 413 echo $row["bezeichner"]."</td></tr>"; // integer 414 415 // if (!$row["description"] == "") { 416 // echo "\n\t<tr><td>Beschreibung:</td><td>".$row["description"]."</td></tr>"; // integer - EntschlÃŒsseln! 417 // } 418 419 if (!$row["name"] == "") { 420 echo "\n\t<tr><td>Name:</td><td>".$row["name"]."</td></tr>"; // char(25) 421 } 422 423 if (!$row["lagezurerdoberflaeche"] == "") { 424 echo "\n\t<tr><td>Lage zur Erdoberfläche:</td><td>".$row["lagezurerdoberflaeche"]."</td></tr>"; 425 } // integer - EntschlÃŒsseln! 426 427 if (!$row["bauweise"] == "") { 428 echo "\n\t<tr><td>Bauweise:</td><td>"; 429 if ($showkey) { 430 echo "<span class='key'>".$row["bauweise"]."</span> "; 431 } 432 echo $row["bauweise_beschreibung"]."</td></tr>"; // integer 433 } 434 435 if (!$row["aog"] == "") { 436 echo "\n\t<tr><td>Anz. der oberird. Geschosse:</td><td>".$row["aog"]."</td></tr>"; // 437 } 438 439 if (!$row["grundflaeche"] == "") { 440 echo "\n\t<tr><td>Grundfläche:</td><td title='Buchfläche'>".$row["grundflaeche"]."</td></tr>"; // integer 441 } 442 443 echo "\n\t<tr><td>Geometrische Fläche:</td><td title='berechnete Fläche'>".$row["flaeche"]." m²</td></tr>"; 444 445 // if (!$row["individualname"] == "") { 446 // echo "\n\t<tr><td>Individualname:</td><td>".$row["individualname"]."</td></tr>"; // char(7) 447 // } 448 449 if (!$row["zustand"] == "") { 450 echo "\n\t<tr><td>Zustand:</td><td>".$row["zustand"]."</td></tr>"; // integer 451 } 452 453 echo "\n</table>"; 454 } 360 while($row = pg_fetch_array($res)) { 361 $ggml=$row["gml_id"]; 362 $gfla=$row["flaeche"]; 363 echo "\n\t<tr>"; 364 365 echo "<td>"; 366 if ($idanzeige) {linkgml($gkz, $ggml, "Gebäude");} 367 // +++ Hausnummer / Adresse ??? 368 echo $row["name"]."</td>"; 369 370 // echo "<td class='fla'>".$row["grundflaeche"]."</td>"; 371 echo "<td class='fla'>".$gfla." m²</td>"; 372 373 echo "<td>"; 374 if ($showkey) {echo "<span class='key'>".$row["gebaeudefunktion"]."</span> ";} 375 echo $row["bezeichner"]."</td>"; 376 377 echo "<td>"; 378 if ($showkey) {echo "<span class='key'>".$row["bauweise"]."</span> ";} 379 echo $row["bauweise_beschreibung"]."</td>"; 380 381 echo "<td>".$row["zustand"]."</td>"; // +++ EntschlÃŒsseln 382 383 echo "\n\t<td class='nwlink noprint'>"; 384 echo "<a title='Hausdaten' href='alkishaus.php?gkz=".$gkz."&gmlid=".$ggml; 385 if ($idanzeige) {echo "&id=j";} 386 echo "'><img src='ico/Haus.ico' width='16' height='16' alt=''></a>"; 387 echo "</td>"; 388 389 echo "</tr>"; 390 } 391 echo "\n</table>"; 455 392 } 456 393
Note: See TracChangeset
for help on using the changeset viewer.