Ignore:
Timestamp:
04/23/18 15:33:39 (6 years ago)
Author:
frank.jaeger
Message:

ALKIS-Buchauskunft überarbeitet. z.B. Flurstücksnachweis mit allen Buchungen.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/info/info/alkisn/alkisgebaeudenw.php

    r389 r402  
    99        2017-06-08 Validierung Eingabeparameter, Feinkorrekturen 
    1010        2017-06-19 Tool-Tip GebÀudefunktion 
     11        2018-04-23 Kennzeichen eingerÃŒckt, &nodebug 
    1112*/ 
    1213session_start(); 
    13  
    14 $showkey="n"; // Var. aus Parameter initalisieren 
     14$showkey="n"; $nodebug=""; // Var. aus Parameter initalisieren 
    1515$cntget = extract($_GET); // Parameter in Variable umwandeln 
    1616 
     
    2020if (!preg_match('#^[j|n]{0,1}$#', $showkey)) {die ("Eingabefehler showkey");} 
    2121if ($showkey == "j") {$showkey=true;} else {$showkey=false;} 
     22if (!preg_match('#^j{0,1}$#', $nodebug)) {die("Eingabefehler nodebug");} 
    2223 
    2324require_once("alkis_conf_location.php"); 
    2425if ($auth == "mapbender") {require_once($mapbender);} 
    2526include("alkisfkt.php"); 
    26 ?> 
     27echo <<<END 
    2728<!doctype html> 
    2829<html lang="de"> 
     
    3536</head> 
    3637<body> 
    37 <?php 
     38END; 
     39// Mit URL-Parameter "&nodebug=j" kann man die Entwicklungsumgebung (in Conf definiert) ausschalten. 
     40// Manuell an die URL anfÃŒgen, wirkt nur temporÀr und wird nicht in Links weiter gereicht. 
     41if ($nodebug == "j") {$debug=0;}  
     42 
    3843$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisgebaeudenw.php'"); 
    3944if (!$con) echo "\n<p class='err'>Fehler beim Verbinden der DB</p>"; 
    4045 
    4146// Flurstueck 
    42 $sqlf ="SELECT f.name, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, f.zeitpunktderentstehung, g.gemarkungsnummer, g.bezeichnung  
     47$sqlf="SELECT f.name, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, f.zeitpunktderentstehung, g.gemarkungsnummer, g.bezeichnung  
    4348FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer  
    4449WHERE f.gml_id= $1 AND f.endet IS NULL AND g.endet IS NULL;"; 
     
    5055        if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".$sqlf."<br>$1 = gml_id = '".$gmlid."'</p>";} 
    5156} 
    52  
    53 if ($rowf = pg_fetch_array($resf)) { 
     57if ($rowf = pg_fetch_assoc($resf)) { 
    5458        $gemkname=htmlentities($rowf["bezeichnung"], ENT_QUOTES, "UTF-8"); 
    5559        $gmkgnr=$rowf["gemarkungsnummer"]; 
     
    6468        echo "\n<p class='err'>Fehler! Kein Treffer fuer gml_id=".$gmlid."</p>"; 
    6569} 
    66  
    67 // Balken 
    68 echo "<p class='geb'>ALKIS Flurst&uuml;ck (Geb&auml;ude) ".$gmkgnr."-".$flurnummer."-".$flstnummer."&nbsp;</p>"; 
    69  
    70 echo "\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;ck (Geb&auml;ude)</h2>"; 
    71  
    72 // Kennzeichen in Rahmen 
    73 echo "\n<table class='outer'>\n<tr>\n<td>" 
    74         ."\n\t<table class='kennzfs' title='Flurst&uuml;ckskennzeichen'>" 
    75     ."\n\t<tr>" 
    76         ."\n\t\t<td class='head'>Gmkg</td>" 
    77         ."\n\t\t<td class='head'>Flur</td>" 
    78         ."\n\t\t<td class='head'>Flurst-Nr.</td>" 
    79     ."\n\t</tr>\n\t<tr>" 
    80         ."\n\t\t<td title='Gemarkung'>"; 
    81         if  ($showkey) {echo "<span class='key'>".$gmkgnr."</span><br>";} 
    82         echo $gemkname."&nbsp;</td>" 
    83         ."\n\t\t<td title='Flurnummer'>".$flurnummer."</td>" 
    84         ."\n\t\t<td title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>" 
    85     ."\n\t</tr>" 
    86         ."\n\t</table>" 
    87 ."\n</td>\n<td>"; 
    88  
    89 // Links zu anderem Nachweis 
    90 echo "\n\t<p class='nwlink noprint'>" 
    91         ."\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$gmlid; 
    92         if ($showkey) {echo "&amp;showkey=j";} 
    93         echo "&amp;eig=n' title='Flurst&uuml;cksnachweis'>Flurst&uuml;ck <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>" 
    94 ."\n\t</p>" 
    95 ."\n\t</td>\n</tr>\n</table>"; 
    96 // Ende Seitenkopf 
     70echo "<p class='geb'>ALKIS Flurst&uuml;ck (Geb&auml;ude) ".$gmkgnr."-".$flurnummer."-".$flstnummer."&nbsp;</p>"; // Balken 
     71echo "\n<h2>Flurst&uuml;ck (Geb&auml;ude)</h2>"; 
     72echo "\n<table class='outer'>" // Kopf 
     73        ."\n<tr>" 
     74                ."\n\t<td>" 
     75                ."\n\t<td class='ll'><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Kennzeichen:</td>" 
     76                ."\n\t<td>" 
     77                        ."\n\t\t<table class='kennzfs' title='Flurst&uuml;ckskennzeichen'>" // Kennzeichen in Rahmen 
     78                                ."\n\t\t<tr>" 
     79                                        ."\n\t\t\t<td class='head'>Gemarkung</td>" 
     80                                        ."\n\t\t\t<td class='head'>Flur</td>" 
     81                                        ."\n\t\t\t<td class='head'>Flurst-Nr.</td>" 
     82                                ."\n\t\t</tr>\n\t\t<tr>" 
     83                                        ."\n\t\t\t<td title='Gemarkung'>"; 
     84                                        if  ($showkey) {echo "<span class='key'>".$gmkgnr."</span><br>";} 
     85                                        echo $gemkname."&nbsp;</td>" 
     86                                        ."\n\t\t\t<td title='Flurnummer'>".$flurnummer."</td>" 
     87                                        ."\n\t\t\t<td title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>" 
     88                                ."\n\t\t</tr>" 
     89                        ."\n\t\t</table>" 
     90                ."\n\t</td>" 
     91                ."\n\t<td>" 
     92                        ."\n\t\t<p class='nwlink noprint'>" // Links zu anderem Nachweis 
     93                                ."\n\t\t\t<a href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$gmlid; 
     94                                if ($showkey) {echo "&amp;showkey=j";} 
     95                                echo "&amp;eig=n' title='Flurst&uuml;cksnachweis'>Flurst&uuml;ck <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>" 
     96                        ."\n\t\t</p>" 
     97                ."\n\t</td>" 
     98        ."\n</tr>" 
     99."\n</table>"; 
    97100 
    98101echo "\n<p class='fsd'>Flurst&uuml;cksfl&auml;che: <b>".number_format($flstflaeche,0,",",".") . " m&#178;</b></p>"; 
     
    129132$gebflsum=0; 
    130133echo "\n<hr>\n<table class='geb'>"; 
    131         // T-Header 
    132         echo "\n<tr>\n" 
     134        echo "\n<tr>" // T-Header 
    133135                ."\n\t<td class='head' title='ggf. Geb&auml;udename'>Name</td>" 
    134136                ."\n\t<td class='heads fla' title='Schnittfl&auml;che zwischen Flurst&uuml;ck und Geb&auml;ude'><img src='ico/sortd.png' width='10' height='10' alt='' title='Sortierung (absteigend)'>Fl&auml;che</td>" 
     
    140142                ."\n\t<td class='head nwlink' title='Link zu den kompletten Hausdaten'>Haus</td>" 
    141143        ."\n</tr>"; 
    142         // T-Body 
    143         while($rowg = pg_fetch_array($resg)) { 
     144        while($rowg = pg_fetch_assoc($resg)) { // T-Body 
    144145                $gebnr = $gebnr + 1; 
    145146                $ggml=$rowg["gml_id"]; 
    146147                $gebflsum=$gebflsum + $rowg["schnittflae"]; 
    147                 $gnam= trim(trim($rowg["name"], "{}"), '"'); // Gebaeude-Name ist ein Array in der DB: '{"A","B"}' 
    148                 // Mehrfachbelegung nur theoretisch. Entklammern reicht. Mal mit und mal ohne "" drum !? 
     148                $gnam=trim(trim($rowg["name"], "{}"), '"'); // Gebaeude-Name ist ein Array in der DB: '{"A","B"}' 
     149                // Mehrfachbelegung nur theoretisch. Entklammern reicht. Mal mit und mal ohne "" drum!? 
    149150                /* SELECT name FROM ax_gebaeude WHERE NOT name IS NULL AND array_length(name, 1) > 1; */ 
    150151                $gfktk=htmlentities($rowg["gebaeudefunktion"], ENT_QUOTES, "UTF-8");  // Geb.-Funktion Key 
     
    174175                        ."\n\t<td class='".$gstyle."'>"; // Sp. 1 Name 
    175176                        if ($gnam != "") {echo "<span title='Geb&auml;udename'>".$gnam."</span><br>";} 
    176                         echo "\n\t</td>"; 
     177                        echo "</td>"; 
    177178 
    178179                        echo "\n\t<td class='fla'>".$f1."</td>" // Sp. 2 
     
    191192                        echo $gzustand."&nbsp;</td>"; 
    192193 
    193                         echo "\n\t<td class='nwlink noprint'>"; 
    194                         // 0 bis N Lagebezeichnungen mit Haus- oder Pseudo-Nummer, alle in ein TD zu EINEM GebÀude 
    195  
     194                        // 2 Spalten mit Links zu anderen Nachweisen: 1. Lage, 2. GebÀude 
     195                        echo "\n\t<td class='nwlink noprint'>"; // Link Lage 
     196 
     197                        // Zu EINEM GebÀude mehrere Lagebezeichnungen mit Haus- oder Pseudo-Nummer möglich, alle in ein TD  
    196198                        // HAUPTgebÀude  Geb >zeigtAuf> lage (mehrere) 
    197199                        $sqll="SELECT 'm' AS ltyp, l.gml_id AS lgml, s.lage, s.bezeichnung, l.hausnummer, '' AS laufendenummer " 
     
    200202                        ."WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL AND s.endet IS NULL "; 
    201203 
    202                         // oder NEBENgebÀude  Geb >hat> Pseudo 
     204                        // UNION - oder NEBENgebÀude  Geb >hat> Pseudo 
    203205                        $sqll.="UNION SELECT 'p' AS ltyp, l.gml_id AS lgml, s.lage, s.bezeichnung, l.pseudonummer AS hausnummer, l.laufendenummer " 
    204206                        ."FROM ax_gebaeude g JOIN ax_lagebezeichnungmitpseudonummer l ON l.gml_id=g.hat " 
     
    207209                 
    208210                        $sqll.="ORDER BY bezeichnung, hausnummer;"; 
    209  
    210211                        $v = array($ggml); 
    211212                        $resl = pg_prepare("", $sqll); 
     
    215216                                if ($debug > 2) {echo "\n<p class='dbg'>SQL=<br>".$sqll."<br>$1 = gml_id = '".$gmlid."'</p>";} 
    216217                        } 
    217                         while($rowl = pg_fetch_array($resl)) { // LOOP: Lagezeilen 
     218                        while($rowl = pg_fetch_assoc($resl)) { // LOOP: Lagezeilen 
    218219                                $ltyp=$rowl["ltyp"]; // Lagezeilen-Typ 
    219220                                $skey=$rowl["lage"]; // Str.-Schluessel 
     
    229230                                        $lagetxt=$snam."&nbsp;".$hsnr; 
    230231                                } 
    231                                 echo "\n\t\t<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''>&nbsp;"; 
    232                                 if ($showkey) {echo "<span class='key'>(".$skey.")</span>&nbsp;";}                       
    233232                                echo "\n\t\t<a title='".$lagetitl."' href='alkislage.php?gkz=".$gkz."&amp;gmlid=".$gmllag."&amp;ltyp=".$ltyp; 
    234                                         if ($showkey)   {echo "&amp;showkey=j";} 
    235                                 echo "'>".$lagetxt."</a>"; 
    236                                 echo "<br>"; 
     233                                        if ($showkey) {echo "&amp;showkey=j";} 
     234                                        echo "'>"; 
     235                                        if ($showkey) {echo "<span class='key'>(".$skey.")</span>&nbsp;";} 
     236                                echo $lagetxt."&nbsp;<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a><br>"; 
    237237                        } // Ende Loop Lage m.H. 
    238238            pg_free_result($resl); 
    239239                        echo "\n\t</td>"; 
    240240 
    241                         echo "\n\t<td class='nwlink noprint'>" 
     241                        echo "\n\t<td class='nwlink noprint'>" // Link Haus 
    242242                                ."\n\t\t<a title='Daten zum Geb&auml;ude-Objekt' href='alkishaus.php?gkz=".$gkz."&amp;gmlid=".$ggml; 
    243243                                if ($showkey) {echo "&amp;showkey=j";} 
    244                                 echo "'><img src='ico/Haus.png' width='16' height='16' alt=''></a>" 
     244                                echo "'>Haus&nbsp;<img src='ico/Haus.png' width='16' height='16' alt=''></a>" 
    245245                        ."\n\t</td>" 
    246246                ."\n</tr>"; 
    247         } 
     247        } // Ende GebÀude 
     248 
    248249        // Footer 
    249250        if ($gebnr == 0) { 
     
    258259        ."\n</table>"; 
    259260        $unbebaut = number_format(($flstflaeche - $gebflsum),0,",",".") . " m&#178;"; 
    260         echo "\n<p><br>Flurst&uuml;cksfl&auml;che abz&uuml;glich Geb&auml;udefl&auml;che: <b>".$unbebaut."</b></p><br>"; 
     261        echo "\n<p>\n<br>Flurst&uuml;cksfl&auml;che abz&uuml;glich Geb&auml;udefl&auml;che: <b>".$unbebaut."</b></p>\n<br>"; 
    261262} 
    262263pg_free_result($resg); 
    263264?> 
    264  
     265  
    265266<div class='buttonbereich noprint'> 
    266 <hr> 
     267        <hr> 
    267268        <a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp; 
    268269        <a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a> 
Note: See TracChangeset for help on using the changeset viewer.