Changeset 427
- Timestamp:
- 02/24/22 16:24:19 (2 years ago)
- Location:
- trunk/info/info/alkisn
- Files:
-
- 18 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/info/info/alkisn/alkis_conf_location.php
r422 r427 1 1 <?php 2 /* ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 2 /* alkis_conf_location.php 3 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 3 7 Pfad zur Konfigurationsdatei der ALKIS-Auskunft. 4 8 Die Conf-Datei sollte aus Sicherheitsgruenden nicht unterhalb des Web-Root-Verzeichnisses liegen. 9 5 10 Version: 6 11 2020-10-13 Syntax ohne Klammern, rename -
trunk/info/info/alkisn/alkisausk.php
r425 r427 2 2 /* alkisausk.php 3 3 4 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 5 7 Dies Programm wird aus dem Mapserver-Template (FeatureInfo) aufgerufen. 6 8 Parameter: &gkz, &gml_id (optional &id) … … 14 16 2020-12-03 function selbstverlinkung() statt $_SERVER['PHP_SELF'] 15 17 2020-12-15 Input-Validation und Strict Comparisation (===) 18 2022-01-13 Neue Functions LnkStf(), DsKy() 16 19 17 20 H i n w e i s : Dies Modul wird beim Entwickler nicht mehr produktiv eingesetzt. 18 21 Statt dessen wird "alkisinlayausk.php" verwendet um von einer WMS-FeatureInfo in ein Fenster ÃŒberzuleiten. 19 Mangels Praxis bleiben Fehler möglicherweise unerkannt.22 Mangels Praxiseinsatz bleiben Fehler möglicherweise unerkannt. 20 23 */ 21 24 ini_set("session.cookie_httponly", 1); … … 45 48 46 49 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 47 $dbg=$debug; // CONF in Arbeits-Variable 48 50 $dbg=$debug; 49 51 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisausk.php'"); 50 52 if (!$con) {echo "<br>Fehler beim Verbinden der DB.\n<br>";} 51 53 52 // *** F L U R S T U E C K ***54 // F L U R S T à C K 53 55 $sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung, f.gemeindezugehoerigkeit_regierungsbezirk, f.gemeindezugehoerigkeit_kreis, f.gemeindezugehoerigkeit_gemeinde 54 56 FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer … … 87 89 // Einer der gesetzten Filter passt nicht 88 90 if ($dbg > 2) { 89 echo "\n<p class='err'>Filter Kreis='".$filtkreis."', Gemeinde='".$filtgem."'</p>" ;90 echo"\n<p class='err'>Flstk. Kreis='".$fskrs."', Gemeinde='".$fsgem."'</p>";91 echo "\n<p class='err'>Filter Kreis='".$filtkreis."', Gemeinde='".$filtgem."'</p>" 92 ."\n<p class='err'>Flstk. Kreis='".$fskrs."', Gemeinde='".$fsgem."'</p>"; 91 93 } 92 94 echo "\n<br><p class='stop1'>Zugriff nicht erlaubt</p> … … 96 98 } 97 99 98 echo "\n<table class='outer'>\n<tr><td>"; 99 // linke Seite 100 echo "\n<h1>ALKIS-Auskunft</h1>" 100 echo "\n<table class='outer'>\n<tr><td>" 101 ."\n<h1>ALKIS-Auskunft</h1>" 101 102 ."\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurstück - Übersicht</h2>"; 102 echo "</td><td align='right'>"; 103 // rechte Seite 104 echo "<img src='pic/AAA.gif' alt=''>" 103 echo "</td><td align='right'>" 104 ."<img src='pic/AAA.gif' alt=''>" 105 105 ."</td></tr></table>"; 106 106 107 107 echo "\n<table class='outer'>\n<tr>\n<td>" 108 108 ."\n\t<table class='kennzfs' title='Flurstückskennzeichen'>\n\t<tr>" 109 ."\n\t\t<td class='head'>Gmkg</td>\n\t\t<td class='head'>Flur</td>\n\t\t<td class='head'>Flurst-Nr.</td>\n\t</tr>" 110 ."\n\t<tr>\n\t\t<td title='Gemarkung'>"; 111 if ($showkey) {echo "<span class='key'>".$gmkgnr."</span><br>";} 112 echo $gemkname."</td>" 113 . "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>" 109 ."\n\t\t<td class='head'>Gemarkung</td>\n\t\t<td class='head'>Flur</td>\n\t\t<td class='head'>Flurst-Nr.</td>\n\t</tr>" 110 ."\n\t<tr>\n\t\t<td title='Gemarkung'>".DsKy($gmkgnr, 'Gemarkungsnummer').$gemkname."</td>" 111 ."\n\t\t<td title='Flurnummer'>".$flurnummer."</td>" 114 112 ."\n\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>" 115 113 ."\n\t</table>" … … 117 115 ."\n\t<p class='nwlink'>weitere Auskunft:<br>"; 118 116 119 // Flurstuecksnachweis (o. Eigent.) 120 echo "\n\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=n"; 121 if ($showkey) {echo "&showkey=j";} 122 echo "' title='Flurstücksnachweis, alle Flurstücksdaten'>Flurstück " 117 // FlurstÃŒcksnachweis (o. Eigent.) 118 echo "\n\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=n".LnkStf() 119 ."' title='Flurstücksnachweis, alle Flurstücksdaten'>Flurstück " 123 120 ."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>" 124 121 ."</a><br>"; 125 122 126 123 // FS- u. Eigent.-NW 127 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=j"; 128 if ($showkey) {echo "&showkey=j";} 129 echo "' title='Flurstück mit Eigentümer'>Flurstück mit Eigentümer " 124 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=j".LnkStf() 125 ."' title='Flurstück mit Eigentümer'>Flurstück mit Eigentümer " 130 126 ."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>" 131 127 ."</a><br>"; 132 128 133 129 // FS-Historie 134 echo "\n\t\t<a href='alkisfshist.php?gkz=".$gkz."&gmlid=".$gmlid; 135 if ($showkey) {echo "&showkey=j";} 136 echo "' title='Vorgänger des Flurstücks'>Historie " 130 echo "\n\t\t<a href='alkisfshist.php?gkz=".$gkz."&gmlid=".$gmlid.LnkStf() 131 ."' title='Vorgänger des Flurstücks'>Historie " 137 132 ."<img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''>" 138 133 ."</a><br>"; 139 134 140 // Gebaeude-NW 141 echo "\n\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&gmlid=".$gmlid; 142 if ($showkey) {echo "&showkey=j";} 143 echo "' title='Gebäudenachweis'>Gebäude " 135 // GebÀude-NW 136 echo "\n\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&gmlid=".$gmlid.LnkStf() 137 ."' title='Gebäudenachweis'>Gebäude " 144 138 ."<img src='ico/Haus.png' width='16' height='16' alt=''>" 145 139 ."</a>" … … 175 169 echo "\n</tr>\n</table>"; 176 170 177 // Flurst uecksflaeche171 // FlurstÃŒcksflÀche 178 172 echo "\n<p class='fsd'>Flurstücksfläche: <b>".$flae."</b></p>"; 179 173 180 // *** G R U N D B U C H ***174 // G R U N D B U C H 181 175 echo "\n<h2><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Grundbuch</h2>"; 182 176 // ALKIS: FS >istgebucht> GS >istBestandteilVon> GB. … … 218 212 ."\n\t</tr>"; 219 213 echo "\n\t<tr>" 220 ."\n\t\t<td title='Grundbuchbezirk'>"; 221 if ($showkey) {echo "<span class='key'>".$rowg["bezirk"]."</span><br>";} 222 echo $beznam."</td>" 214 ."\n\t\t<td title='Grundbuchbezirk'>".DsKy($rowg["bezirk"], 'Grundbuch-Bezirk-*').$beznam."</td>" 223 215 ."\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowg["blatt"]."</span></td>" 224 216 ."\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundstück)'>".$rowg["laufendenummer"]."</td>" 225 ."\n\t\t<td title='Buchungsart'>"; 226 if ($showkey) {echo "<span class='key'>".$rowg["buchungsart"]."</span><br>";} 227 echo $rowg["bart"] 228 ."</td>" 217 ."\n\t\t<td title='Buchungsart'>".DsKy($rowg["buchungsart"], 'Buchungsart-*').$rowg["bart"]."</td>" 229 218 ."\n\t</tr>" 230 219 ."\n\t</table>"; … … 235 224 echo "\n</td>\n<td>" 236 225 ."\n\t<p class='nwlink'>weitere Auskunft:<br>" 237 ."\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$rowg[0]; 238 if ($showkey) {echo "&showkey=j";} 239 echo "' title='Grundbuchnachweis'>".$blattart." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>" 240 ."</a>" 226 ."\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$rowg[0].LnkStf() 227 ."' title='Grundbuchnachweis'>".$blattart." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>" 241 228 ."\n\t</p>" 242 229 ."\n</td>\n</tr>\n</table>"; 243 230 244 // E I G E N T U EM E R231 // E I G E N T à M E R 245 232 if ($blattkey === 5000) { // SchlÃŒssel Blatt-Art 246 233 echo "\n<p>Keine Angaben zum Eigentum bei fiktivem Blatt</p>\n" … … 248 235 } else { // kein Eigent. bei fiktiv. Blatt 249 236 // Ausgabe Name in Function 250 $n = eigentuemer($rowg["gml_id"], false, "imFenster"); // ohne Adressen237 $n = eigentuemer($rowg["gml_id"], false, true); // ohne Adressen 251 238 252 239 if ($n === 0) { // keine NamNum, kein Eigent. -
trunk/info/info/alkisn/alkisauszug.css
r425 r427 1 /* Modul: alkisauszug.css 2 S t y l e s zur ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 1 /* alkisauszug.css 2 3 S t y l e s zur ALKIS-Auskunft 4 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 3 5 4 6 Version: 5 2010-09-21 6 .... 7 2018-04-23 Spaltenbreiten 8 2018-05-03 GS-Nachweis 9 2020-02-03 media screen body width 7 2010-09-21 8 ... 10 9 2021-03-08 Gruppenwechsel-ZwischenÃŒberschrift 11 10 2021-03-17 Balken von Bauwerk Farbe wie im WMS 12 11 2021-12-30 Spalte nwlink breiter, Class td.flag entfÀllt, Tabellenkopf Hintergrund 12 2022-02-24 neue Bauwerk-Typen, Farben ÃŒberarbeitet 13 13 14 14 https://wiki.selfhtml.org/wiki/Grafik/Farbpaletten#Farbnamen … … 19 19 /* Banner im Kopf (farbiger Balken) */ 20 20 p.balken {text-align: right; padding-top: 4px; padding-bottom: 4px; padding-right: 24px;} 21 22 21 /* Farbcode individuell fÃŒr Nachweis-Art (gleiche Farbe wie Rahmen um Kennz.) */ 23 p.fsausk {background-color: teal; color: silver;} /* Uebersichts-Seite Flurstuecks-Auskunft */24 p.fskennz,p.fsei{background-color: navy; color: silver;} /* Flurst uecks-Nachweis */25 p.fshis {background-color: gray; color: white;} /* Flurst uecks-Historie */22 p.fsausk {background-color: teal; color: silver;} /* Ãbersichts-Seite FlurstÃŒcks-Auskunft */ 23 p.fskennz,p.fsei{background-color: navy; color: silver;} /* FlurstÃŒcks-Nachweis */ 24 p.fshis {background-color: gray; color: white;} /* FlurstÃŒcks-Historie */ 26 25 p.gbkennz {background-color: green; color: silver;} /* Bestandsnachweis */ 27 p.gskennz {background-color: LightGreen ; color: DimGray ;}/* GrundstÃŒcksnachweis */26 p.gskennz {background-color: LightGreen ; color: black;} /* GrundstÃŒcksnachweis */ 28 27 p.nakennz {background-color: maroon; color: silver;} /* Personen- und Adressdaten */ 29 p.geb {background-color: yellow; color: gray;} /* Gebaeude zum FS */30 p.lage {background-color: lime; color: gray;} /* Lage/Adresse zum FS */31 p.strasse {background-color: limegreen; color: slategray;} /* Strasse */28 p.geb {background-color: yellow; color: black;} /* GebÀude zum FS */ 29 p.lage {background-color: lime; color: black;} /* Lage/Adresse zum FS */ 30 p.strasse {background-color: limegreen; color: black;} /* StraÃe */ 32 31 p.recht {background-color: #F0F8FF; color: gray;} /* Baurecht, Bodenneuordnung */ 33 34 32 /* in alkisbauwerk.php synchron zum Mapfile (WMS), 9 Layer-Gruppen */ 35 p.bauwerk1 {background-color: rgb(40,0,180); color: gray;}/* 1 Bauwerk im Verkehrsbereich */36 p.bauwerk2 {background-color: rgb(0,160,246); color: gray;} /* 2 Bauwerk im GewÀsserbereich */33 p.bauwerk1 {background-color: rgb(40,0,180); color: silver;} /* 1 Bauwerk im Verkehrsbereich */ 34 p.bauwerk2 {background-color: rgb(0,160,246); color: black;} /* 2 Bauwerk im GewÀsserbereich */ 37 35 p.bauwerk3 {background-color: rgb(160,130,0); color: black;} /* 3 Sonstiges Bauwerk oder sonstige Einrichtung */ 38 p.bauwerk4 {background-color: rgb(252,162,2); color: gray;} /* 4 Bauwerk oder Anlage fÃŒr Industrie und Gewerbe */39 p.bauwerk5 {background-color: rgb(140,0,120); color: gray;} /* 5 Bauwerk oder Anlage fÃŒr Sport, Freizeit und Erholung */36 p.bauwerk4 {background-color: rgb(252,162,2); color: black;} /* 4 Bauwerk oder Anlage fÃŒr Industrie und Gewerbe */ 37 p.bauwerk5 {background-color: rgb(140,0,120); color: silver;} /* 5 Bauwerk oder Anlage fÃŒr Sport, Freizeit und Erholung */ 40 38 p.bauwerk6 {background-color: rgb(220,10,10); color: black;} /* 6 Leitung */ 41 p.bauwerk7 {background-color: rgb(10,180,10 ); color: gray;} /* 7 Transportanlage */42 p.bauwerk8 {background-color: rgb(135,76,1); color: gray;}/* 8 Turm */39 p.bauwerk7 {background-color: rgb(10,180,10 ); color: black;} /* 7 Transportanlage */ 40 p.bauwerk8 {background-color: rgb(135,76,1); color: silver;} /* 8 Turm */ 43 41 p.bauwerk9 {background-color: rgb(0,140,40); color: black;} /* 9 VorratsbehÀlter, Speicherbauwerk */ 42 p.bauwerk10 {background-color: rgb(80,70,40); color: silver;} /* 10 Historisches Bauwerk oder historische Einrichtung */ 43 p.bauwerk11 {background-color: rgb(190,170,10); color: black;} /* 11 Heilquelle, Gasquelle */ 44 p.bauwerk12 {background-color: rgb(200,10,60); color: black;} /* 12 Einrichtung in öffentlichen Bereichen */ 45 p.bauwerk13 {background-color: rgb(250,40,10); color: black;} /* 13 Besonderer Bauwerkspunkt */ 44 46 45 47 /* Format nach Inhalt */ 46 p.fsd {margin-left: 170px;} /* Flst-Fl aeche */48 p.fsd {margin-left: 170px;} /* Flst-FlÀche */ 47 49 p.gbl {position: relative; left: 60px;} /* Nam: Buchungsstelle*/ 48 50 p.zus {margin: 2pt; padding: 2pt; border:1px dotted maroon; background: white;} /* Zusatz zum Eigent., gerahmt */ 49 p.avh {font-style: italic; color: navy;} /* Anteilsverh aeltnis */51 p.avh {font-style: italic; color: navy;} /* AnteilsverhÀltnis */ 50 52 p.ant {font-style: italic; position: relative;} /* Anteil am FS left: 12px;*/ 51 p.geig {color: navy;} /* GB-Nachw. Eigent uemer Name */52 p.gadr {color: maroon; margin-top: 1pt;} /* GB-Nachw. Eigent uemer Adresse */53 p.geig {color: navy;} /* GB-Nachw. EigentÃŒmer Name */ 54 p.gadr {color: maroon; margin-top: 1pt;} /* GB-Nachw. EigentÃŒmer Adresse */ 53 55 p.nwlink, td.nwlink {font-size: 7pt; text-align: right; margin-top: 0pt;} /* Link zum Nachweis GB, FS, ..*/ 54 56 p.err {font-size: 11px; color: red;} /* Fehler -> Anwender */ 55 57 p.dbg, td.dbg{font-size: 10px; color: gray;} /* Debug -> Entwickler */ 56 p.cnt {font-size: 10px; color: gray;} /* Counter, Z aehler */58 p.cnt {font-size: 10px; color: gray;} /* Counter, ZÀhler */ 57 59 p.warn {color: gray; font-style: italic;} /* Warnung, Hinweis */ 58 60 p.ph {color: gray;} /* Platzhalter */ … … 75 77 overflow: auto; padding: 6px; background: #e4f7dd;} 76 78 77 span.key {color: gray; font-style: italic;} /* Schl uesselwert vor Text */79 span.key {color: gray; font-style: italic;} /* SchlÃŒsselwert vor Text */ 78 80 span.wichtig{color: #BB0000; font-weight: bold;} /* Wert hervorheben */ 79 81 span.flae {font-weight: bold;} /* FlÀchensumme Flurst. */ … … 85 87 86 88 /* Kennzeichen mit Rahmen, Rahmen-Farben wie 'Balken' */ 87 table.kennzfs {border: 2px solid navy; padding: 3px; margin: 0px;} /* Flurst ueck */89 table.kennzfs {border: 2px solid navy; padding: 3px; margin: 0px;} /* FlurstÃŒck */ 88 90 table.kennzfsh {border: 2px dotted navy; padding: 3px; margin: 0px;} /* - historisch */ 89 91 table.kennzgb {border: 2px solid green; padding: 3px; margin: 0px;} /* Grundbuch */ 90 92 table.kennzgbf {border: 2px dotted green; padding: 3px; margin: 0px;} /* - fiktiv */ 91 93 table.kennzla {border: 2px solid lime; padding: 3px; margin: 0px;} /* Lage */ 92 table.kennzstra {border: 2px solid limegreen; padding: 3px; margin: 0px;} /* Stra sse */94 table.kennzstra {border: 2px solid limegreen; padding: 3px; margin: 0px;} /* StraÃe */ 93 95 94 /* fast volle Breite, f uer verschiedene Zwecke, aber kleiner als Body */96 /* fast volle Breite, fÃŒr verschiedene Zwecke, aber kleiner als Body */ 95 97 table.fs, table.nua, table.klas, table.eig, table.outer, table.geb {width: 98%;} 96 98 … … 102 104 td.re {min-width: 80px; padding-right: 4px; text-align: right;} /* RechtsbÃŒndig */ 103 105 td.fla {width: 110px; padding-right: 4px; text-align: right;} /* FlÀchen rechtsbuendig (stellengerecht) */ 104 td.fsnr {padding-right: 4px; text-align: right;} /* Flst.-Nr. rechtsb uendig */106 td.fsnr {padding-right: 4px; text-align: right;} /* Flst.-Nr. rechtsbÃŒndig */ 105 107 td.key {width: 35px; padding-right: 4px; padding-left: 4px;} 106 108 /* td.emz {width: 45px; padding-right: 4px; padding-left: 4px; text-align: right;} Ertragsmesszahl der BodenschÀtzung */ … … 112 114 td.fett {font-weight: bold;} 113 115 td.nwlink {min-width: 99px;} /* Link zum Nachweis */ 116 td.adrlink {min-width: 190px;} /* Link Adresse im Nauwerk */ 114 117 115 118 /* Kopfzeile, SpaltenÃŒberschrift, GW-Zwischenzeile */ … … 142 145 /* Ãberschriften */ 143 146 h1, h2, h3, h4, h5, h6 {font-family: Verdana, Geneva, Arial, Helvetica, sans-serif;} 144 h1 { 145 h2 { 146 h3 { 147 h4 { 148 h5 { 149 h6 { 147 h1 {color: black; font-size: 14pt;} 148 h2 {color: maroon; font-size: 12pt;} 149 h3 {color: green; font-size: 12pt;} 150 h4 {color: black; font-size: 11pt;} 151 h5 {color: black; font-size: 10pt;} 152 h6 {color: black; font-size: 9pt; margin-top: 2pt; margin: 0pt;} /* FS in Best-NW */ 150 153 151 154 img {border: 0px; margin: 0px;} /* Icons */ … … 156 159 p.stop2 {font-size: 10pt;} 157 160 158 /* Seitenfu ss*/161 /* Seitenfuà */ 159 162 .buttonbereich {font-size: 7pt; text-align: right;} 160 163 .confbereich {font-size: 7pt; background-color: #F2F2F2; width: 65%; position: relative; left: 50px; border-radius: 12px; padding-right: 26px; margin-top: 20px;} -
trunk/info/info/alkisn/alkisbaurecht.php
r425 r427 1 1 <?php 2 2 /* alkisbaurecht.php - Baurecht 3 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 3 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 4 6 5 7 Version: … … 10 12 2020-12-15 Input-Validation und Strict Comparisation (===) 11 13 2021-12-09 Neue Parameter: $katAmtMix (Kataster-Amt-Mix), $PrntBtn (Drucken-SchaltflÀche) 14 2022-01-13 Limit in Variable. Neue Functions LnkStf(), DsKy() 12 15 */ 13 16 ini_set("session.cookie_httponly", 1); … … 48 51 49 52 $erlaubnis = darf_ich(); if ($erlaubnis === 0) {die('<p class="stop1">Abbruch</p></body>');} 50 51 $dbg=$debug; // CONF in Arbeits-Variable 52 // Mit URL-Parameter "&nodebug=j" kann man die Entwicklungsumgebung (in Conf definiert) ausschalten. 53 // Wirkt temporÀr und wird nicht in Links weiter gereicht. 53 $dbg=$debug; 54 54 if ($nodebug === "j") {$dbg=0;} 55 56 55 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisbaurecht.php'"); 57 56 if (!$con) echo "\n<p class='err'>Fehler beim Verbinden der DB</p>"; … … 89 88 $behd=$row["dokumentation"]; 90 89 91 echo "<p class='balken recht'>ALKIS Bau-, Raum- oder Bodenordnungsrecht ".$artfest."-".$verfnr." </p>"; // Balken90 echo "<p class='balken recht'>ALKIS Bau-, Raum- oder Bodenordnungsrecht ".$artfest."-".$verfnr." </p>"; 92 91 echo "\n<h2><img src='ico/Gericht.png' width='16' height='16' alt=''> Bau-, Raum- oder Bodenordnungsrecht</h2>"; 93 92 echo "\n<table>" 94 93 ."\n<tr>" 95 ."\n\t<td class='li'>Art der Festlegung:</td>\n\t<td>"; 96 if ($showkey) {echo "<span class='key'>(".$artfest.")</span> ";} 97 echo "<span class='wichtig'>".$row["adfbez"]."</span></td>" 94 ."\n\t<td class='li'>Art der Festlegung:</td>" 95 ."\n\t<td>".DsKy($artfest, '* Art der Festlegung')."<span class='wichtig'>".$row["adfbez"]."</span></td>" 98 96 ."\n</tr>"; 99 97 if ($enam != "") { … … 109 107 ."\n</tr>"; 110 108 } 111 if ($stellb != "") { // z.B. Umlegung *mit* und Baulast *ohne* Dienststelle , darum bezirk testen109 if ($stellb != "") { // z.B. Umlegung *mit* und Baulast *ohne* Dienststelle 112 110 echo "\n<tr>" 113 ."\n\t<td class='li'>Dienststelle:</td>\n\t<td>"; 114 if ($showkey) {echo "<span class='key'>(".$row["stelle"].")</span> ";} 115 echo $stellb 116 ."</td>" 111 ."\n\t<td class='li'>Dienststelle:</td>\n\t<td>".DsKy($row["stelle"], 'Dienststelle-*').$stellb."</td>" 117 112 ."\n</tr>"; 118 113 if ($stella != "") { 119 114 echo "\n<tr>" 120 ."\n\t<td class='li'>Art der Dienststelle:</td>" 121 ."\n\t<td>"; 122 if ($showkey) {echo " <span class='key'>(".$stella.")</span> ";} 123 echo "<span title='".$behd."'>".$behb."</span>"; 124 echo "</td>" 115 ."\n\t<td class='li'>Art der Dienststelle:</td>" 116 ."\n\t<td>".DsKy($stella, '* Art der Dienststelle')."<span title='".$behd."'>".$behb."</span>"."</td>" 125 117 ."\n</tr>"; 126 118 } … … 139 131 ."\n<p>Ermittelt durch geometrische Verschneidung. Nach Größe absteigend.</p>"; 140 132 133 $fslimit=200; 141 134 $sql ="SELECT f.gml_id, g.bezeichnung, f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, round(st_area(ST_Intersection(r.wkb_geometry,f.wkb_geometry))::numeric,1) AS schnittflae 142 135 FROM ax_flurstueck f … … 151 144 $v=array($gmlid, $filtkreis, $filtgem); 152 145 } 153 $sql.="ORDER BY schnittflae DESC LIMIT 100;";146 $sql.="ORDER BY schnittflae DESC LIMIT ".$fslimit.";"; 154 147 // > 0.0 ist gemeint, Ungenauigkeit durch st_simplify 155 148 // Limit: Flurbereinig. kann groà werden! … … 180 173 $nen=$row["nenner"]; 181 174 echo "\n<tr>" 182 ."\n\t<td>"; 183 if ($showkey) {echo "<span class='key'>(".$gmkgnr.")</span> ";} 184 echo $gemarkung."</td>" 175 ."\n\t<td>".DsKy($gmkgnr, 'Gemarkungsnummer').$gemarkung."</td>" 185 176 ."\n\t<td>".$row["flurnummer"]."</td>" 186 177 ."\n\t<td><span class='wichtig'>".$row["zaehler"]; 187 178 if ($nen != "") {echo "/".$nen;} 188 179 echo "</span></td>" 189 180 ."\n\t<td class='fla'>".$row["schnittflae"]." m²</td>" 190 181 ."\n\t<td class='fla'>".$row["amtlicheflaeche"]." m²</td>" 191 182 ."\n\t<td class='nwlink noprint'>" 192 ."\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$row["gml_id"]. "&eig=n' "183 ."\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$row["gml_id"].LnkStf()."&eig=n' " 193 184 ."title='Flurstücksnachweis'>Flurstück " 194 185 ."\n\t\t\t<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>" … … 206 197 // if ($dbg > 2) {echo "\n<p class='err'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."<br>$1 = ".$gmlid." $2 = ".$filtkreis." $3 = ".$filtgem."</p>";} 207 198 } 208 } elseif ($fscnt === 100) {209 echo "<p>... und weitere Flurstücke (Limit 100erreicht).</p>";199 } elseif ($fscnt >= $fslimit) { 200 echo "<p>... und weitere Flurstücke (Limit ".$fslimit." erreicht).</p>"; 210 201 } 211 202 -
trunk/info/info/alkisn/alkisbauwerk.php
r425 r427 1 1 <?php 2 /* alkisbauwerk.php - Bauwerksdaten 3 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 4 5 1 Bauwerk im Verkehrsbereich 6 2 Bauwerk im GewÀsserbereich 7 3 Sonstiges Bauwerk oder sonstige Einrichtung 51009 8 4 Bauwerk oder Anlage fÃŒr Industrie und Gewerbe 51002 9 5 Bauwerk oder Anlage fÃŒr Sport, Freizeit und Erholung 51006 10 6 Leitung 51005 11 7 Transportanlage 51004 12 8 Turm 51001 13 9 VorratsbehÀlter, Speicherbauwerk 51003 2 /* alkisbauwerk.php 3 4 ALKIS-Buchauskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 7 Bauwerksdaten 8 9 Typen von Bauwerken (jeweils eigene Tabellen mit unterschiedlicher Struktur): 10 1 Bauwerk im Verkehrsbereich 11 2 Bauwerk im GewÀsserbereich 12 3 Sonstiges Bauwerk oder sonstige Einrichtung 51009 13 4 Bauwerk oder Anlage fÃŒr Industrie und Gewerbe 51002 14 5 Bauwerk oder Anlage fÃŒr Sport, Freizeit und Erholung 51006 15 6 Leitung 51005 16 7 Transportanlage 51004 17 8 Turm 51001 18 9 VorratsbehÀlter, Speicherbauwerk 51003 19 10 Historisches Bauwerk oder historische Einrichtung 51007 20 11 Heilquelle, Gasquelle 51008 21 12 Einrichtung in öffentlichen Bereichen 51010 22 (13 Besonderer Bauwerkspunkt 51011) fehlt noch 14 23 15 24 Version: 16 25 2021-03-11 Neues Modul 17 2021-03-17 Korrekturen 18 2021-12-09 2021-12-09 Neue Parameter: $katAmtMix (Kataster-Amt-Mix), $PrntBtn (Drucken-SchaltflÀche). Debugging verbessert. 26 2021-12-09 Neue Parameter: $katAmtMix (Kataster-Amt-Mix), $PrntBtn (Drucken-SchaltflÀche). Debugging verbessert. 27 2022-01-13 Neue Functions LnkStf(), DsKy() 28 2022-02-23 Neue Bauwerks-Typen 10-12 19 29 20 30 ToDo: 21 - Icon fÃŒr "Bauwerk" machen! ggf. einzeln fÃŒr jede der 9 Arten? 22 - 4 weitere Objektarten, bisher nicht verwendet: 23 51007 'Historisches Bauwerk oder historische Einrichtung' 24 51008 'Heilquelle, Gasquelle' 25 51010 'Einrichtung in öffentlichen Bereichen' 26 51011 'Besonderer Bauwerkspunkt' 31 - Vom Bauwerk ÃŒberlagerte FlurstÃŒcke ÃŒber geom. Verschneidung ermitteln und verlinken. 32 - Icon fÃŒr "Bauwerk" machen! Ggf. einzeln fÃŒr jede Art? 27 33 */ 28 34 29 // Bauwerk (bw) gehört zu (gz) Lage 30 // Ein Bauwerk "gehört zu" (Relation) einem GebÀude. Zu diesem GebÀude die Adresse(n) als Tabellen-Zeile ausgeben 35 // Ein Bauwerk (bw_) "gehört zu" (_gz_) (Relation) einem GebÀude. Zu diesem GebÀude die Lage-Zeilen als Tabellen ausgeben 31 36 function bw_gz_lage($gmlgz) { 32 global $gkz, $dbg, $showkey; 33 37 global $gkz, $dbg; 34 38 // HAUPTgebÀude Geb >zeigtAuf> lage (mehrere) 35 39 $sqlgz ="SELECT 'm' AS ltyp, l.gml_id AS lgml, s.lage, s.bezeichnung, l.hausnummer, '' AS laufendenummer, p.bezeichnung as gemeinde " … … 38 42 ."JOIN ax_gemeinde p ON s.land=p.land AND s.regierungsbezirk=p.regierungsbezirk AND s.kreis=p.kreis AND s.gemeinde=p.gemeinde ".UnqKatAmt("s","p") 39 43 ."WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL AND s.endet IS NULL "; 40 41 // ++ evtl. keine NEBEN-GebÀude möglich, nur Haupt-?42 44 // UNION - oder NEBENgebÀude Geb >hat> Pseudo 43 45 $sqlgz.="UNION SELECT 'p' AS ltyp, l.gml_id AS lgml, s.lage, s.bezeichnung, l.pseudonummer AS hausnummer, l.laufendenummer, p.bezeichnung as gemeinde " … … 45 47 ."JOIN ax_lagebezeichnungkatalogeintrag s ON l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage " 46 48 ."JOIN ax_gemeinde p ON s.land=p.land AND s.regierungsbezirk=p.regierungsbezirk AND s.kreis=p.kreis AND s.gemeinde=p.gemeinde ".UnqKatAmt("s","p") 47 ."WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL AND s.endet IS NULL " // ID des Hauses" 48 ."ORDER BY bezeichnung, hausnummer, laufendenummer;"; 49 ."WHERE g.gml_id= $1 AND g.endet IS NULL AND l.endet IS NULL AND s.endet IS NULL "; 50 51 $sqlgz.="ORDER BY bezeichnung, hausnummer, laufendenummer;"; 49 52 $v = array($gmlgz); 50 53 $resgz = pg_prepare("", $sqlgz); … … 52 55 if (!$resgz) { 53 56 echo "\n<p class='err'>Fehler bei Lage mit HsNr. zum Bauwerk</p>"; 54 if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".str_replace("$1", "'".$gmlgz."'", $sqlgz)."</p>";} 55 if ($dbg > 1) {echo "<p class='dbg'>Fehler:".pg_result_error($resgz)."</p>";} 57 if ($dbg > 1) { 58 echo "<p class='dbg'>Fehler:".pg_result_error($resgz)."</p>"; 59 if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".str_replace("$1", "'".$gmlgz."'", $sqlgz)."</p>";} 60 } 56 61 } else { 57 echo "\n<tr>"; 58 echo "\n\t<td class='li'>Lage</td>"; 59 echo "\n\t<td class='fett'>"; 62 $erst=true; 60 63 while($rowgz = pg_fetch_assoc($resgz)) { // LOOP: Lagezeilen 64 if ($erst) { 65 echo "\n<tr>\n\t<td class='li'>Lage</td>"; 66 $erst=false; 67 } else { 68 echo "\n<tr>\n\t<td class='li'> </td>"; 69 } 61 70 $ltyp=$rowgz["ltyp"]; 62 71 $skey=$rowgz["lage"]; … … 65 74 $hlfd=$rowgz["laufendenummer"]; 66 75 $gmllag=$rowgz["lgml"]; 67 $gemeinde=$rowgz["gemeinde"]; 68 76 $gemeinde=htmlentities($rowgz["gemeinde"], ENT_QUOTES, "UTF-8"); 69 77 if ($ltyp === "p") { 70 $lagetitl="Nebengeb Àude Nr. ".$hlfd;78 $lagetitl="Nebengebäude Nr. ".$hlfd; 71 79 $lagetxt=$snam." ".$hsnr." (".$hlfd."), ".$gemeinde; 72 80 } else { 73 $lagetitl="HauptgebÀude - H ausnummer".$hsnr;81 $lagetitl="HauptgebÀude - HsNr. ".$hsnr; 74 82 $lagetxt=$snam." ".$hsnr.", ".$gemeinde; 75 83 } 76 77 echo "\n\t\t<a title='".$lagetitl."' href='alkislage.php?gkz=".$gkz."&gmlid=".$gmllag."&ltyp=".$ltyp; 78 if ($showkey) {echo "&showkey=j";} 79 echo "'>"; 80 if ($showkey) {echo "<span class='key'>(".$skey.")</span> ";} 81 echo $lagetxt." <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a> "; 82 } 83 echo "</td>"; 84 echo "\n\t<td>"; 85 echo "\n\t\t<p class='erkli'>Das Haus hat die Adresse ".$lagetitl."</p>"; 86 echo "\n\t</td>\n</tr>"; 84 echo "\n\t<td class='adrlink'><a title='".$lagetitl."' href='alkislage.php?gkz=".$gkz."&gmlid=".$gmllag."&ltyp=".$ltyp.LnkStf()."'>" 85 .DsKy($skey, 'Straßen-*').$lagetxt." <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a> "; 86 echo "</td>\n\t<td><p class='erkli'>Adresse: ".$lagetitl."</p></td>\n</tr>"; 87 } 87 88 pg_free_result($resgz); 88 89 } … … 119 120 $titel='Bezeichnung'; 120 121 break; 121 // 1 Verk. 122 case 'durchfahrtshoehe': 122 case 'durchfahrtshoehe': // 1 123 123 $titel='Durchfahrtshöhe'; 124 124 $einh=' m'; 125 125 break; 126 // 6 Leitung 127 case 'spannungsebene': 126 case 'spannungsebene': // 6 128 127 $titel='Spannungsebene'; 129 128 $einh=' KV'; 130 129 break; 131 // 7 Transport 132 case 'produkt': 130 case 'produkt': // 7 133 131 $titel='Produkt'; 134 132 break; 135 // Fehler 133 case 'kilometerangabe': // 12 134 $titel='Kilometerangabe'; 135 $einh=' KM'; 136 break; 136 137 default: // noch nicht berÃŒcksichtigt 137 138 if ($dbg > 1) {echo "<p class='dbg'>Der Feldname ".$col." ist in function zusatz_spalte noch nicht berücksichtigt.</p>";} 138 139 $titel=$col; 139 140 } 140 141 141 if ($inhalt != '') {$inhalt.=$einh;} 142 142 tab_zeile($titel, '', $inhalt, '', ''); … … 156 156 // if ($dbg > 1) {echo "<p>Verweis Typ '".$col."' auf Objekt(e): '".$inhalt."'.</p>";} 157 157 switch ($col) { 158 case 'hatdirektunten': // [] ++ Wie kann man dies Objekt finden?158 case 'hatdirektunten': // [] In welcher Tabelle kann man dies Objekt finden? 159 159 $olist=''; 160 160 $arrhdu=explode(",", trim($inhalt, "{}")); … … 167 167 verweis_zeile('Haus', '', 'Das Bauwerk gehört zum Haus'); 168 168 } else { 169 $link="\n\t\t<a title='gehört zu' href='alkishaus.php?gkz=".$gkz."&gmlid=".$inhalt; 170 if ($showkey) {$link.="&showkey=j";} 171 $link.="'>Haus <img src='ico/Haus.png' width='16' height='16' alt=''></a>"; 169 $link="\n\t\t<a title='gehört zu' href='alkishaus.php?gkz=".$gkz."&gmlid=".$inhalt.LnkStf() 170 ."'>Haus <img src='ico/Haus.png' width='16' height='16' alt=''></a>"; 172 171 verweis_zeile('Haus', $link, 'Das Bauwerk gehört zum Haus'); 173 172 bw_gz_lage($inhalt); … … 182 181 183 182 // S T A R T 184 185 183 ini_set("session.cookie_httponly", 1); 186 184 session_start(); … … 199 197 die("Fehlender Parameter"); 200 198 } 201 if (!preg_match('#^[ 1-9]{1}$#', $btyp)) {die("Eingabefehler btyp");} // Bauwerks-Typ = Tabelle199 if (!preg_match('#^[0-9]{1,2}$#', $btyp)) {die("Eingabefehler btyp");} // Bauwerks-Typ = Tabelle 202 200 if (!preg_match('#^[j|n]{0,1}$#', $showkey)) {die ("Eingabefehler showkey");} 203 201 if ($showkey === "j") {$showkey=true;} else {$showkey=false;} … … 224 222 225 223 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 226 $dbg=$debug; // CONF in Arbeits-Variable227 if ($nodebug === "j") {$dbg=0;} // Entwicklungsumgebung temporÀr ausschalten224 $dbg=$debug; 225 if ($nodebug === "j") {$dbg=0;} 228 226 229 227 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisbauwerk.php'"); 230 228 if (!$con) echo "\n<p class='err'>Fehler beim Verbinden der DB</p>\n"; 231 229 232 // Konstanten fÃŒr Sortierung und Gruppierung 230 // Konstanten fÃŒr Sortierung und Gruppierung nach Bauwerks-Typen 233 231 $btyp_verkehr=1; $btyp_gewaesser=2; $btyp_sonst=3; $btyp_indu=4; $btyp_sport=5; 234 232 $btyp_leitg=6; $btyp_trans=7; $btyp_turm=8; $btyp_vorrat=9; 233 $btyp_hist=10; $btyp_heil=11; $btyp_oeff=12; $btyp_bpkt=13; 235 234 236 235 /* in ALLEN Bauwerks-Typen folgende Spalten, bisher NICHT verwendet: … … 244 243 3. sqlz: ZusÀtzliche Spalten, individuell je Objektart (einfache Werte-Darstellung) 245 244 4. sqlr: Relationen zu anderen Objektarten */ 245 $WH=" WHERE b".$btyp.".gml_id = $1 AND b".$btyp.".endet IS NULL;"; // WHERE-Clause (mehrfach je Typ verwendet) 246 246 switch ($btyp) { 247 247 248 248 case $btyp_verkehr: // 1 - V e r k e h r 249 $FR=" FROM ax_bauwerkimverkehrsbereich b1 "; // FROM-Clause (mehrfach je Typ verwendet) 249 250 $btyptitle='Bauwerk im Verkehrsbereich'; 250 $sqlb="SELECT b1.bauwerksfunktion, k1.beschreibung, k1.dokumentation, b1.name, b1.statement, GeometryType(b1.wkb_geometry) as bgeotyp, round(st_area(b1.wkb_geometry)::numeric,2) AS flae 251 FROM ax_bauwerkimverkehrsbereich b1 LEFT JOIN ax_bauwerksfunktion_bauwerkimverkehrsbereich k1 ON b1.bauwerksfunktion=k1.wert 252 WHERE b1.gml_id = $1 AND b1.endet IS NULL;"; 253 $sqlk="SELECT b1.zustand, k1.beschreibung, k1.dokumentation 254 FROM ax_bauwerkimverkehrsbereich b1 LEFT JOIN ax_zustand_bauwerkimverkehrsbereich k1 ON b1.zustand=k1.wert 255 WHERE b1.gml_id = $1 AND b1.endet IS NULL;"; 256 $sqlz="SELECT b1.bezeichnung, b1.breitedesobjekts, b1.durchfahrtshoehe FROM ax_bauwerkimverkehrsbereich b1 WHERE b1.gml_id = $1 AND b1.endet IS NULL;"; 257 $sqlr="SELECT b1.hatdirektunten FROM ax_bauwerkimverkehrsbereich b1 WHERE b1.gml_id = $1 AND b1.endet IS NULL;"; 251 $sqlb="SELECT b1.bauwerksfunktion, k1.beschreibung, k1.dokumentation, b1.name, b1.statement, GeometryType(b1.wkb_geometry) as bgeotyp, round(st_area(b1.wkb_geometry)::numeric,2) AS flae" 252 .$FR."LEFT JOIN ax_bauwerksfunktion_bauwerkimverkehrsbereich k1 ON b1.bauwerksfunktion=k1.wert".$WH; 253 $sqlk="SELECT b1.zustand, k1.beschreibung, k1.dokumentation".$FR."LEFT JOIN ax_zustand_bauwerkimverkehrsbereich k1 ON b1.zustand=k1.wert".$WH; 254 $sqlz="SELECT b1.bezeichnung, b1.breitedesobjekts, b1.durchfahrtshoehe".$FR.$WH; 255 $sqlr="SELECT b1.hatdirektunten".$FR.$WH; 258 256 break; 259 257 260 258 case $btyp_gewaesser: // 2 - G e w À s s e r 259 $FR=" FROM ax_bauwerkimgewaesserbereich b2 "; 261 260 $btyptitle='Bauwerk im GewÀsserbereich'; 262 $sqlb="SELECT b2.bauwerksfunktion, ug.beschreibung, ug.dokumentation, b2.name, b2.statement, GeometryType(b2.wkb_geometry) as bgeotyp, round(st_area(b2.wkb_geometry)::numeric,2) AS flae 263 FROM ax_bauwerkimgewaesserbereich b2 LEFT JOIN ax_bauwerksfunktion_bauwerkimgewaesserbereich ug ON b2.bauwerksfunktion=ug.wert 264 WHERE b2.gml_id = $1 AND b2.endet IS NULL;"; 265 $sqlk="SELECT b2.zustand, k2.beschreibung, k2.dokumentation 266 FROM ax_bauwerkimgewaesserbereich b2 LEFT JOIN ax_zustand_bauwerkimgewaesserbereich k2 ON b2.zustand=k2.wert 267 WHERE b2.gml_id = $1 AND b2.endet IS NULL;"; 268 $sqlz="SELECT b2.bezeichnung FROM ax_bauwerkimgewaesserbereich b2 WHERE b2.gml_id = $1 AND b2.endet IS NULL;"; 269 $sqlr="SELECT b2.hatdirektunten FROM ax_bauwerkimgewaesserbereich b2 WHERE b2.gml_id = $1 AND b2.endet IS NULL;"; 261 $sqlb="SELECT b2.bauwerksfunktion, ug.beschreibung, ug.dokumentation, b2.name, b2.statement, GeometryType(b2.wkb_geometry) as bgeotyp, round(st_area(b2.wkb_geometry)::numeric,2) AS flae" 262 .$FR."LEFT JOIN ax_bauwerksfunktion_bauwerkimgewaesserbereich ug ON b2.bauwerksfunktion=ug.wert".$WH; 263 $sqlk="SELECT b2.zustand, k2.beschreibung, k2.dokumentation".$FR."LEFT JOIN ax_zustand_bauwerkimgewaesserbereich k2 ON b2.zustand=k2.wert".$WH; 264 $sqlz="SELECT b2.bezeichnung".$FR.$WH; 265 $sqlr="SELECT b2.hatdirektunten".$FR.$WH; 270 266 break; 271 267 272 268 case $btyp_sonst: // 3 - S o n s t i g e Bauwerke 269 $FR=" FROM ax_sonstigesbauwerkodersonstigeeinrichtung b3 "; 273 270 $btyptitle='Sonstiges Bauwerk oder sonstige Einrichtung'; 274 $sqlb="SELECT b3.bauwerksfunktion, k3.beschreibung, k3.dokumentation, b3.name, b3.statement, 275 GeometryType(b3.wkb_geometry) as bgeotyp, round(st_area(b3.wkb_geometry)::numeric,2) AS flae 276 FROM ax_sonstigesbauwerkodersonstigeeinrichtung b3 LEFT JOIN ax_bauwerksfunktion_sonstigesbauwerkodersonstigeeinrichtun k3 ON b3.bauwerksfunktion=k3.wert 277 WHERE b3.gml_id = $1 AND b3.endet IS NULL;"; 278 $sqlk="SELECT b3.funktion, k3.beschreibung AS beschr, k3.dokumentation AS doku, b3.hydrologischesmerkmal, hm.beschreibung AS hmbeschr, hm.dokumentation AS hmdoku 279 FROM ax_sonstigesbauwerkodersonstigeeinrichtung b3 280 LEFT JOIN ax_funktion_bauwerk k3 ON b3.funktion=k3.wert 281 LEFT JOIN ax_hydrologischesmerkmal_sonstigesbauwerkodersonstigeeinri hm ON b3.hydrologischesmerkmal=hm.wert 282 WHERE b3.gml_id = $1 AND b3.endet IS NULL;"; 283 $sqlz="SELECT b3.bezeichnung, b3.objekthoehe FROM ax_sonstigesbauwerkodersonstigeeinrichtung b3 WHERE b3.gml_id = $1 AND b3.endet IS NULL;"; 284 $sqlr="SELECT b3.hatdirektunten, b3.gehoertzu FROM ax_sonstigesbauwerkodersonstigeeinrichtung b3 WHERE b3.gml_id = $1 AND b3.endet IS NULL;"; 285 286 /* gehoertzubauwerk_ax_sonstigesbauwerkodersonstigeeinrichtun 287 gehoertzubauwerk_ax_bauwerkoderanlagefuersportfreizeitunde 288 gehoertzubauwerk_ax_leitung 289 gehoertzubauwerk_ax_bauwerkoderanlagefuerindustrieundgewer 290 gehoertzubauwerk_ax_einrichtunginoeffentlichenbereichen 291 gehoertzubauwerk_ax_heilquellegasquelle 292 gehoertzubauwerk_ax_historischesbauwerkoderhistorischeeinr 293 gehoertzubauwerk_ax_turm 294 gehoertzubauwerk_ax_vorratsbehaelterspeicherbauwerk 295 gehoertzubauwerk_ax_transportanlage 296 gehoertzubauwerk_ax_wegpfadsteig 297 gehoertzubauwerk_ax_gleis 298 gehoertzubauwerk_ax_bahnverkehrsanlage 299 gehoertzubauwerk_ax_bauwerkimgewaesserbereich 300 gehoertzubauwerk_ax_strassenverkehrsanlage 301 gehoertzubauwerk_ax_seilbahnschwebebahn 302 gehoertzubauwerk_ax_einrichtungenfuerdenschiffsverkehr 303 gehoertzubauwerk_ax_bauwerkimverkehrsbereich 304 gehoertzubauwerk_ax_flugverkehrsanlage 305 gehoertzubauwerk_ax_gewaesserstationierungsachse 306 gehoertzubauwerk_ax_sickerstrecke 307 gehoertzubauwerk_ax_schifffahrtsliniefaehrverkehr 308 gehoertzubauwerk_ax_wasserspiegelhoehe 309 gehoertzubauwerk_ax_abschnitt 310 gehoertzubauwerk_ax_ast 311 gehoertzubauwerk_ax_netzknoten 312 gehoertzubauwerk_ax_nullpunkt 313 gehoertzubauwerk_ax_hafen 314 gehoertzubauwerk_ax_testgelaende 315 gehoertzubauwerk_ax_schleuse 316 gehoertzubauwerk_ax_ortslage 317 gehoertzubauwerk_ax_grenzuebergang 318 gehoertzubauwerk_ax_polder 319 gehoertzubauwerk_ax_gewaessermerkmal 320 gehoertzubauwerk_ax_untergeordnetesgewaesser 321 gehoertzubauwerk_ax_vegetationsmerkmal */ 271 $sqlb="SELECT b3.bauwerksfunktion, k3.beschreibung, k3.dokumentation, b3.name, b3.statement, GeometryType(b3.wkb_geometry) as bgeotyp, round(st_area(b3.wkb_geometry)::numeric,2) AS flae" 272 .$FR."LEFT JOIN ax_bauwerksfunktion_sonstigesbauwerkodersonstigeeinrichtun k3 ON b3.bauwerksfunktion=k3.wert".$WH; 273 $sqlk="SELECT b3.funktion, k3.beschreibung, k3.dokumentation, b3.hydrologischesmerkmal, hm.beschreibung AS hmbeschr, hm.dokumentation AS hmdoku" 274 .$FR."LEFT JOIN ax_funktion_bauwerk k3 ON b3.funktion=k3.wert " 275 ." LEFT JOIN ax_hydrologischesmerkmal_sonstigesbauwerkodersonstigeeinri hm ON b3.hydrologischesmerkmal=hm.wert".$WH; 276 $sqlz="SELECT b3.bezeichnung, b3.objekthoehe".$FR.$WH; 277 $sqlr="SELECT b3.hatdirektunten, b3.gehoertzu".$FR.$WH; 322 278 break; 323 279 324 280 case $btyp_indu: // 4 - Bauwerk oder Anlage fÃŒr I n d u s t r i e und Gewerbe 281 $FR=" FROM ax_bauwerkoderanlagefuerindustrieundgewerbe b4 "; 325 282 $btyptitle="Bauwerk oder Anlage fÃŒr Industrie und Gewerbe"; 326 $sqlb="SELECT b4.bauwerksfunktion, k4.beschreibung, k4.dokumentation, b4.name, b4.statement, GeometryType(b4.wkb_geometry) as bgeotyp, round(st_area(b4.wkb_geometry)::numeric,2) AS flae 327 FROM ax_bauwerkoderanlagefuerindustrieundgewerbe b4 LEFT JOIN ax_bauwerksfunktion_bauwerkoderanlagefuerindustrieundgewer k4 ON b4.bauwerksfunktion=k4.wert 328 WHERE b4.gml_id = $1 AND b4.endet IS NULL;"; 329 $sqlk="SELECT b4.zustand, k4.beschreibung, k4.dokumentation 330 FROM ax_bauwerkoderanlagefuerindustrieundgewerbe b4 LEFT JOIN ax_zustand_bauwerkoderanlagefuerindustrieundgewerbe k4 ON b4.zustand=k4.wert 331 WHERE b4.gml_id = $1 AND b4.endet IS NULL;"; 332 $sqlz="SELECT b4.bezeichnung, b4.objekthoehe FROM ax_bauwerkoderanlagefuerindustrieundgewerbe b4 WHERE b4.gml_id = $1 AND b4.endet IS NULL;"; 333 $sqlr="SELECT b4.hatdirektunten FROM ax_bauwerkoderanlagefuerindustrieundgewerbe b4 WHERE b4.gml_id = $1 AND b4.endet IS NULL;"; 283 $sqlb="SELECT b4.bauwerksfunktion, k4.beschreibung, k4.dokumentation, b4.name, b4.statement, GeometryType(b4.wkb_geometry) as bgeotyp, round(st_area(b4.wkb_geometry)::numeric,2) AS flae" 284 .$FR."LEFT JOIN ax_bauwerksfunktion_bauwerkoderanlagefuerindustrieundgewer k4 ON b4.bauwerksfunktion=k4.wert".$WH; 285 $sqlk="SELECT b4.zustand, k4.beschreibung, k4.dokumentation" 286 .$FR."LEFT JOIN ax_zustand_bauwerkoderanlagefuerindustrieundgewerbe k4 ON b4.zustand=k4.wert".$WH; 287 $sqlz="SELECT b4.bezeichnung, b4.objekthoehe".$FR.$WH; 288 $sqlr="SELECT b4.hatdirektunten".$FR.$WH; 334 289 break; 335 290 336 291 case $btyp_sport: // 5 - Bauwerk oder Anlage fÃŒr S p o r t , Freizeit und Erholung 292 $FR=" FROM ax_bauwerkoderanlagefuersportfreizeitunderholung b5 "; 337 293 $btyptitle="Bauwerk oder Anlage fÃŒr Sport, Freizeit und Erholung"; 338 $sqlb="SELECT b5.bauwerksfunktion, k5.beschreibung, k5.dokumentation, b5.name, b5.statement, GeometryType(b5.wkb_geometry) as bgeotyp, round(st_area(b5.wkb_geometry)::numeric,2) AS flae 339 FROM ax_bauwerkoderanlagefuersportfreizeitunderholung b5 LEFT JOIN ax_bauwerksfunktion_bauwerkoderanlagefuersportfreizeitunde k5 ON b5.bauwerksfunktion=k5.wert 340 WHERE b5.gml_id = $1 AND b5.endet IS NULL;"; 341 $sqlk="SELECT b5.sportart, k5.beschreibung, k5.dokumentation 342 FROM ax_bauwerkoderanlagefuersportfreizeitunderholung b5 LEFT JOIN ax_sportart_bauwerkoderanlagefuersportfreizeitunderholung k5 ON b5.sportart=k5.wert 343 WHERE b5.gml_id = $1 AND b5.endet IS NULL;"; 344 $sqlz="SELECT b5.breitedesobjekts FROM ax_bauwerkoderanlagefuersportfreizeitunderholung b5 WHERE b5.gml_id = $1 AND b5.endet IS NULL;"; 345 $sqlr="SELECT b5.hatdirektunten FROM ax_bauwerkoderanlagefuersportfreizeitunderholung b5 WHERE b5.gml_id = $1 AND b5.endet IS NULL;"; 294 $sqlb="SELECT b5.bauwerksfunktion, k5.beschreibung, k5.dokumentation, b5.name, b5.statement, GeometryType(b5.wkb_geometry) as bgeotyp, round(st_area(b5.wkb_geometry)::numeric,2) AS flae" 295 .$FR."LEFT JOIN ax_bauwerksfunktion_bauwerkoderanlagefuersportfreizeitunde k5 ON b5.bauwerksfunktion=k5.wert".$WH; 296 $sqlk="SELECT b5.sportart, k5.beschreibung, k5.dokumentation" 297 .$FR."LEFT JOIN ax_sportart_bauwerkoderanlagefuersportfreizeitunderholung k5 ON b5.sportart=k5.wert".$WH; 298 $sqlz="SELECT b5.breitedesobjekts".$FR.$WH; 299 $sqlr="SELECT b5.hatdirektunten".$FR.$WH; 346 300 break; 347 301 348 302 case $btyp_leitg: // 6 - L e i t u n g 303 $FR=" FROM ax_leitung b6 "; 349 304 $btyptitle="Leitung"; 350 $sqlb="SELECT b6.bauwerksfunktion, k6.beschreibung, k6.dokumentation, b6.name, b6.statement, GeometryType(b6.wkb_geometry) as bgeotyp, round(st_area(b6.wkb_geometry)::numeric,2) AS flae 351 FROM ax_leitung b6 LEFT JOIN ax_bauwerksfunktion_leitung k6 ON b6.bauwerksfunktion=k6.wert 352 WHERE b6.gml_id = $1 AND b6.endet IS NULL;"; 305 $sqlb="SELECT b6.bauwerksfunktion, k6.beschreibung, k6.dokumentation, b6.name, b6.statement, GeometryType(b6.wkb_geometry) as bgeotyp, round(st_area(b6.wkb_geometry)::numeric,2) AS flae" 306 .$FR."LEFT JOIN ax_bauwerksfunktion_leitung k6 ON b6.bauwerksfunktion=k6.wert".$WH; 353 307 $sqlk=""; 354 $sqlz="SELECT b6.spannungsebene FROM ax_leitung b6 WHERE b6.gml_id = $1 AND b6.endet IS NULL;";355 $sqlr="SELECT b6.hatdirektunten FROM ax_leitung b6 WHERE b6.gml_id = $1 AND b6.endet IS NULL;";308 $sqlz="SELECT b6.spannungsebene".$FR.$WH; 309 $sqlr="SELECT b6.hatdirektunten".$FR.$WH; 356 310 break; 357 311 358 312 case $btyp_trans: // 7 - T r a n s p o r t a n l a g e 313 $FR=" FROM ax_transportanlage b7 "; 359 314 $btyptitle="Transportanlage"; 360 $sqlb="SELECT b7.bauwerksfunktion, k7.beschreibung, k7.dokumentation, NULL AS name, b7.statement, GeometryType(b7.wkb_geometry) as bgeotyp, round(st_area(b7.wkb_geometry)::numeric,2) AS flae 361 FROM ax_transportanlage b7 LEFT JOIN ax_bauwerksfunktion_transportanlage k7 ON b7.bauwerksfunktion=k7.wert 362 WHERE b7.gml_id = $1 AND b7.endet IS NULL;"; 363 $sqlk="SELECT b7.lagezurerdoberflaeche, k7.beschreibung, k7.dokumentation 364 FROM ax_transportanlage b7 LEFT JOIN ax_lagezurerdoberflaeche_transportanlage k7 ON b7.lagezurerdoberflaeche=k7.wert 365 WHERE b7.gml_id = $1 AND b7.endet IS NULL;"; 366 $sqlz="SELECT b7.produkt FROM ax_transportanlage b7 WHERE b7.gml_id = $7 AND b7.endet IS NULL;"; 367 $sqlr="SELECT b7.hatdirektunten FROM ax_transportanlage b7 WHERE b7.gml_id = $1 AND b7.endet IS NULL;"; 315 $sqlb="SELECT b7.bauwerksfunktion, k7.beschreibung, k7.dokumentation, b7.statement, GeometryType(b7.wkb_geometry) as bgeotyp, round(st_area(b7.wkb_geometry)::numeric,2) AS flae" 316 .$FR."LEFT JOIN ax_bauwerksfunktion_transportanlage k7 ON b7.bauwerksfunktion=k7.wert".$WH; 317 $sqlk="SELECT b7.lagezurerdoberflaeche, k7.beschreibung, k7.dokumentation" 318 .$FR."LEFT JOIN ax_lagezurerdoberflaeche_transportanlage k7 ON b7.lagezurerdoberflaeche=k7.wert".$WH; 319 $sqlz="SELECT b7.produkt".$FR.$WH; 320 $sqlr="SELECT b7.hatdirektunten".$FR.$WH; 368 321 break; 369 322 370 323 case $btyp_turm: // 8 - T u r m (Sonderfall Array) 324 $FR=" FROM ax_turm b8 "; 371 325 $btyptitle="Turm"; 372 $sqlb="SELECT k8.wert AS bauwerksfunktion, k8.beschreibung, k8.dokumentation, b8.name, b8.statement, GeometryType(b8.wkb_geometry) as bgeotyp, round(st_area(b8.wkb_geometry)::numeric,2) AS flae 373 FROM ax_turm b8 LEFT JOIN ax_bauwerksfunktion_turm k8 ON k8.wert =ANY(b8.bauwerksfunktion) 374 WHERE b8.gml_id = $1 AND b8.endet IS NULL;"; 375 $sqlk="SELECT b8.zustand, k8.beschreibung, k8.dokumentation 376 FROM ax_turm b8 LEFT JOIN ax_zustand_turm k8 ON b8.zustand=k8.wert 377 WHERE b8.gml_id = $1 AND b8.endet IS NULL;"; 378 $sqlz="SELECT b8.objekthoehe FROM ax_turm b8 WHERE b8.gml_id = $1 AND b8.endet IS NULL;"; 379 $sqlr="SELECT b8.hatdirektunten, b8.zeigtauf FROM ax_turm b8 WHERE b8.gml_id = $1 AND b8.endet IS NULL;"; 326 $sqlb="SELECT k8.wert AS bauwerksfunktion, k8.beschreibung, k8.dokumentation, b8.name, b8.statement, GeometryType(b8.wkb_geometry) as bgeotyp, round(st_area(b8.wkb_geometry)::numeric,2) AS flae" 327 .$FR."LEFT JOIN ax_bauwerksfunktion_turm k8 ON k8.wert =ANY(b8.bauwerksfunktion)".$WH; 328 $sqlk="SELECT b8.zustand, k8.beschreibung, k8.dokumentation" 329 .$FR."LEFT JOIN ax_zustand_turm k8 ON b8.zustand=k8.wert".$WH; 330 $sqlz="SELECT b8.objekthoehe".$FR.$WH; 331 $sqlr="SELECT b8.hatdirektunten, b8.zeigtauf".$FR.$WH; 380 332 break; 381 333 382 334 case $btyp_vorrat: // 9 - V o r r a t s b e h À l t e r , S p e i c h e r b a u w e r k 335 $FR=" FROM ax_vorratsbehaelterspeicherbauwerk b9 "; 383 336 $btyptitle="VorratsbehÀlter, Speicherbauwerk"; 384 $sqlb="SELECT b9.bauwerksfunktion, k9.beschreibung, k9.dokumentation, b9.name, b9.statement, GeometryType(b9.wkb_geometry) as bgeotyp, round(st_area(b9.wkb_geometry)::numeric,2) AS flae 385 FROM ax_vorratsbehaelterspeicherbauwerk b9 LEFT JOIN ax_bauwerksfunktion_vorratsbehaelterspeicherbauwerk k9 ON b9.bauwerksfunktion=k9.wert 386 WHERE b9.gml_id = $1 AND b9.endet IS NULL;"; 337 $sqlb="SELECT b9.bauwerksfunktion, k9.beschreibung, k9.dokumentation, b9.name, b9.statement, GeometryType(b9.wkb_geometry) as bgeotyp, round(st_area(b9.wkb_geometry)::numeric,2) AS flae" 338 .$FR."LEFT JOIN ax_bauwerksfunktion_vorratsbehaelterspeicherbauwerk k9 ON b9.bauwerksfunktion=k9.wert".$WH; 387 339 $sqlk="SELECT b9.lagezurerdoberflaeche, k9.beschreibung, k9.dokumentation, 388 b9.speicherinhalt, sp9.beschreibung AS spbes, sp9.dokumentation AS spdok 389 FROM ax_vorratsbehaelterspeicherbauwerk b9 390 LEFT JOIN ax_lagezurerdoberflaeche_vorratsbehaelterspeicherbauwerk k9 ON b9.lagezurerdoberflaeche=k9.wert 391 LEFT JOIN ax_speicherinhalt_vorratsbehaelterspeicherbauwerk sp9 ON b9.speicherinhalt=sp9.wert 392 WHERE b9.gml_id = $1 AND b9.endet IS NULL;"; 393 $sqlz="SELECT b9.objekthoehe FROM ax_vorratsbehaelterspeicherbauwerk b9 WHERE b9.gml_id = $1 AND b9.endet IS NULL;"; 394 $sqlr="SELECT b9.hatdirektunten FROM ax_vorratsbehaelterspeicherbauwerk b9 WHERE b9.gml_id = $1 AND b9.endet IS NULL;"; 395 break; 340 b9.speicherinhalt, sp9.beschreibung AS spbes, sp9.dokumentation AS spdok" 341 .$FR."LEFT JOIN ax_lagezurerdoberflaeche_vorratsbehaelterspeicherbauwerk k9 ON b9.lagezurerdoberflaeche=k9.wert 342 LEFT JOIN ax_speicherinhalt_vorratsbehaelterspeicherbauwerk sp9 ON b9.speicherinhalt=sp9.wert".$WH; 343 $sqlz="SELECT b9.objekthoehe".$FR.$WH; 344 $sqlr="SELECT b9.hatdirektunten".$FR.$WH; 345 break; 346 347 case $btyp_hist: // 10 - H i s t o r i s c h e s Bauwerk oder historische Einrichtung 348 $FR=" FROM ax_historischesbauwerkoderhistorischeeinrichtung b10 "; 349 $btyptitle="Historisches Bauwerk oder historische Einrichtung"; 350 $sqlb="SELECT b10.name, b10.statement, GeometryType(b10.wkb_geometry) as bgeotyp, round(st_area(b10.wkb_geometry)::numeric,2) AS flae".$FR.$WH; 351 $sqlk="SELECT b10.archaeologischertyp, k10.beschreibung, k10.dokumentation" 352 .$FR."LEFT JOIN ax_archaeologischertyp_historischesbauwerkoderhistorischee k10 ON b10.archaeologischertyp=k10.wert".$WH; 353 $sqlz=""; 354 $sqlr="SELECT b10.hatdirektunten".$FR.$WH; 355 break; 356 357 case $btyp_heil: // 11 - H e i l q u e l l e , G a s q u e l l e 358 $FR=" FROM ax_heilquellegasquelle b11 "; 359 $btyptitle="Heilquelle, Gasquelle"; 360 $sqlb="SELECT b11.name, b11.statement, GeometryType(b11.wkb_geometry) as bgeotyp, round(st_area(b11.wkb_geometry)::numeric,2) AS flae".$FR.$WH; 361 $sqlk="SELECT b11.art, k11.beschreibung, k11.dokumentation, " 362 ."b11.hydrologischesmerkmal, hm.beschreibung AS hmbes, hm.dokumentation AS hmdok".$FR 363 ."LEFT JOIN ax_art_heilquellegasquelle k11 ON b11.art=k11.wert " 364 ."LEFT JOIN ax_hydrologischesmerkmal_heilquellegasquelle hm ON b11.hydrologischesmerkmal=hm.wert".$WH; 365 $sqlz=""; 366 $sqlr="SELECT b11.hatdirektunten ".$FR.$WH; 367 break; 368 369 case $btyp_oeff: // 12 - Einrichtung in ö f f e n t l i c h e n Bereichen 370 $FR=" FROM ax_einrichtunginoeffentlichenbereichen b12 "; 371 $btyptitle="Einrichtung in öffentlichen Bereichen"; 372 $sqlb="SELECT b12.statement, GeometryType(b12.wkb_geometry) as bgeotyp, round(st_area(b12.wkb_geometry)::numeric,2) AS flae".$FR.$WH; 373 $sqlk="SELECT b12.art, k12.beschreibung, k12.dokumentation".$FR 374 ."LEFT JOIN ax_art_einrichtunginoeffentlichenbereichen k12 ON b12.art=k12.wert".$WH; 375 $sqlz="SELECT b12.kilometerangabe".$FR.$WH; 376 $sqlr="SELECT b12.hatdirektunten ".$FR.$WH; 377 break; 378 /* 379 case $btyp_bpkt: // 13 - Besonderer Bauwerkspunkt (ohne Geom.) 380 $FR=" FROM ax_besondererbauwerkspunkt b13 "; 381 $btyptitle="Besonderer Bauwerkspunkt"; 382 // punktkennung, sonstigeeigenschaft, zustaendigestelle_land, zustaendigestelle_stelle 383 break; */ 396 384 397 385 default: 398 die('<p class="stop1">F ehler showkey</p></body>');399 break; 400 } 401 402 // 1. sqlb: Standard-Spalten, die bei jedem Typ vorhanden sind386 die('<p class="stop1">Falscher Bauwerkstyp.</p></body>'); 387 break; 388 } 389 390 // 1. sqlb: Standard-Spalten, die bei (fast) jedem Typ vorhanden sind 403 391 $v=array($gmlid); 404 392 $resb=pg_prepare("", $sqlb); … … 423 411 } else { // Treffer 424 412 // Seitenkopf 425 echo "<p class='balken bauwerk".$btyp."'>ALKIS Bauwerk ".$btyp." - ".$gmlid." </p>"; // Balken, Farbe wie WMS 426 echo "\n<h2>".$btyptitle."</h2>"; 427 echo "\n<p class='nwlink noprint'>"; // Umschalter: auch leere Felder 428 echo "Umschalten: <a class='nwlink' href='".selbstverlinkung()."?gkz=".$gkz."&btyp=".$btyp."&gmlid=".$gmlid; 429 if ($showkey) {echo "&showkey=j";} else {echo "&showkey=n";} 430 if ($allefelder) { 431 echo "&allfld=n'>nur Felder mit Inhalt"; 432 } else { 433 echo "&allfld=j'>auch leere Felder"; 434 } 413 echo "<p class='balken bauwerk".$btyp."'>ALKIS Bauwerk ".$btyp." - ".$gmlid." </p>" // Balken, Farbe wie WMS 414 ."\n<h2>".$btyptitle."</h2>" 415 ."\n<p class='nwlink noprint'>" // Umschalter: auch leere Felder 416 ."Umschalten: <a class='nwlink' href='".selbstverlinkung()."?gkz=".$gkz."&btyp=".$btyp."&gmlid=".$gmlid.LnkStf(); 417 if ($allefelder) { 418 echo "&allfld=n'>nur Felder mit Inhalt"; 419 } else { 420 echo "&allfld=j'>auch leere Felder"; 421 } 435 422 echo "</a></p>"; 436 423 … … 445 432 ."\n</tr>"; 446 433 447 tab_zeile('Bauwerksfunktion', $rowb["bauwerksfunktion"], htmlentities($rowb["beschreibung"], ENT_QUOTES, "UTF-8"), '', htmlentities($rowb["dokumentation"], ENT_QUOTES, "UTF-8")); 448 tab_zeile('Name', '', htmlentities($rowb["name"], ENT_QUOTES, "UTF-8"), '', ''); 449 tab_zeile('Statement', '', htmlentities($rowb["statement"], ENT_QUOTES, "UTF-8"), '', ''); 434 if (isset($rowb["bauwerksfunktion"])) { // nicht immer vorhanden 435 tab_zeile('Bauwerksfunktion', $rowb["bauwerksfunktion"], htmlentities($rowb["beschreibung"], ENT_QUOTES, "UTF-8"), '', htmlentities($rowb["dokumentation"], ENT_QUOTES, "UTF-8")); 436 } 437 438 if (isset($rowb["name"])) { 439 tab_zeile('Name', '', htmlentities($rowb["name"], ENT_QUOTES, "UTF-8"), '', ''); 440 } 441 442 tab_zeile('Statement', '', htmlentities($rowb["statement"], ENT_QUOTES, "UTF-8"), '', ''); 450 443 451 444 // G e o m e t r i e und FlÀche 452 $geotyp=$rowb["bgeotyp"]; 453 switch ($geotyp) { 454 case "POINT": 455 $geodeutsch=$geotyp." bedeutet 'Punkt', einzelne Koordinate."; 456 break; 457 case "LINESTRING": 458 $geodeutsch=$geotyp." bedeutet 'Linie'."; 459 break; 460 case "POLYGON": 461 $geodeutsch=$geotyp." bedeutet eine einzelne 'Fläche'."; 462 break; 463 case "MULTIPOLYGON": 464 $geodeutsch=$geotyp." bedeutet eine 'Fläche', die aus mehreren Teilen bestehen kann oder die Aussparungen haben kann."; 465 break; 466 default: $geodeutsch=""; 467 } 468 tab_zeile('Geometrietyp', '', $geotyp, '', $geodeutsch); 469 470 if ($geotyp == "POLYGON" or $geotyp == "MULTIPOLYGON") { 471 $flaeche=$rowb["flae"]." m²"; 472 tab_zeile('Fläche', '', $flaeche, '', "Die 'Fläche' des Bauwerks wird aus der Geometrie berechnet, aber nur bei POLYGON."); 445 if (isset($rowb["bgeotyp"])) { 446 $geotyp=$rowb["bgeotyp"]; 447 switch ($geotyp) { 448 case "POINT": 449 $geodeutsch=$geotyp." bedeutet 'Punkt', einzelne Koordinate."; 450 break; 451 case "LINESTRING": 452 $geodeutsch=$geotyp." bedeutet 'Linie'."; 453 break; 454 case "POLYGON": 455 $geodeutsch=$geotyp." bedeutet eine einzelne 'Fläche'."; 456 break; 457 case "MULTIPOLYGON": 458 $geodeutsch=$geotyp." bedeutet eine 'Fläche', die aus mehreren Teilen bestehen kann oder die Aussparungen haben kann."; 459 break; 460 default: $geodeutsch=""; 461 } 462 tab_zeile('Geometrietyp', '', $geotyp, '', $geodeutsch); 463 464 if ($geotyp == "POLYGON" or $geotyp == "MULTIPOLYGON") { 465 $flaeche=$rowb["flae"]." m²"; 466 tab_zeile('Fläche', '', $flaeche, '', "Die 'Fläche' des Bauwerks wird aus der Geometrie berechnet, aber nur bei POLYGON."); 467 } 473 468 } 474 469 } … … 476 471 } 477 472 478 // 2. sqlk: Z u s À t z l i c h e K e y - V a l u e - B e z i e h u n g en473 // 2. sqlk: ZusÀtzliche Key-Value-Beziehungen 479 474 // Andere Art der Darstellung als die schlichten Zusatzfelder, Key optional anzeigen, ErklÀrung zum Wert aus SchlÃŒsseltabelle 480 475 if ($sqlk != '') { … … 500 495 } else { 501 496 // Treffer 497 $bes=htmlentities($rowk["beschreibung"], ENT_QUOTES, "UTF-8"); 498 $dok=htmlentities($rowk["dokumentation"], ENT_QUOTES, "UTF-8"); 502 499 switch ($btyp) { // individuell je Typ 503 500 case $btyp_verkehr: // 1 504 tab_zeile('Zustand', $rowk["zustand"], htmlentities($rowk["beschreibung"], ENT_QUOTES, "UTF-8"), '', htmlentities($rowk["dokumentation"], ENT_QUOTES, "UTF-8"));501 tab_zeile('Zustand', $rowk["zustand"], $bes, '', $dok); 505 502 break; 506 503 case $btyp_gewaesser: // 2 507 tab_zeile('Zustand', $rowk["zustand"], htmlentities($rowk["beschreibung"], ENT_QUOTES, "UTF-8"), '', htmlentities($rowk["dokumentation"], ENT_QUOTES, "UTF-8"));504 tab_zeile('Zustand', $rowk["zustand"], $bes, '', $dok); 508 505 break; 509 506 case $btyp_sonst: // 3 510 tab_zeile('Funktion', $rowk["funktion"], htmlentities($rowk["beschr"], ENT_QUOTES, "UTF-8"), '', htmlentities($rowk["doku"], ENT_QUOTES, "UTF-8"));507 tab_zeile('Funktion', $rowk["funktion"], $bes, '', $dok); 511 508 tab_zeile('Hydrologisches Merkmal', $rowk["hydrologischesmerkmal"], htmlentities($rowk["hmbeschr"], ENT_QUOTES, "UTF-8"), '', htmlentities($rowk["hmdoku"], ENT_QUOTES, "UTF-8")); 512 509 break; 513 510 case $btyp_indu: // 4 514 tab_zeile('Zustand', $rowk["zustand"], htmlentities($rowk["beschreibung"], ENT_QUOTES, "UTF-8"), '', htmlentities($rowk["dokumentation"], ENT_QUOTES, "UTF-8"));511 tab_zeile('Zustand', $rowk["zustand"], $bes, '', $dok); 515 512 break; 516 513 case $btyp_sport: // 5 517 tab_zeile('Sportart', $rowk["sportart"], htmlentities($rowk["beschreibung"], ENT_QUOTES, "UTF-8"), '', htmlentities($rowk["dokumentation"], ENT_QUOTES, "UTF-8"));514 tab_zeile('Sportart', $rowk["sportart"], $bes, '', $dok); 518 515 break; 519 516 case $btyp_trans: // 7 520 tab_zeile('Lage zur Erdoberfläche', $rowk["lagezurerdoberflaeche"], htmlentities($rowk["beschreibung"], ENT_QUOTES, "UTF-8"), '', htmlentities($rowk["dokumentation"], ENT_QUOTES, "UTF-8"));517 tab_zeile('Lage zur Erdoberfläche', $rowk["lagezurerdoberflaeche"], $bes, '', $dok); 521 518 break; 522 519 case $btyp_turm: // 8 523 tab_zeile('Zustand', $rowk["zustand"], htmlentities($rowk["beschreibung"], ENT_QUOTES, "UTF-8"), '', htmlentities($rowk["dokumentation"], ENT_QUOTES, "UTF-8"));520 tab_zeile('Zustand', $rowk["zustand"], $bes, '', $dok); 524 521 break; 525 522 case $btyp_vorrat: // 9 526 tab_zeile('Lage zur Erdoberfläche', $rowk["lagezurerdoberflaeche"], htmlentities($rowk["beschreibung"], ENT_QUOTES, "UTF-8"), '', htmlentities($rowk["dokumentation"], ENT_QUOTES, "UTF-8"));523 tab_zeile('Lage zur Erdoberfläche', $rowk["lagezurerdoberflaeche"], $bes, '', $dok); 527 524 tab_zeile('Speicherinhalt', $rowk["speicherinhalt"], htmlentities($rowk["spbes"], ENT_QUOTES, "UTF-8"), '', htmlentities($rowk["spdok"], ENT_QUOTES, "UTF-8")); 528 break; 525 case $btyp_hist: // 10 526 tab_zeile('Archäologischer Typ', $rowk["archaeologischertyp"], $bes, '', $dok); 527 break; 528 case $btyp_heil: // 11 529 tab_zeile('Art', $rowk["art"], $bes, '', $dok); 530 tab_zeile('Hydrologisches Merkmal', $rowk["hydrologischesmerkmal"], htmlentities($rowk["hmbes"], ENT_QUOTES, "UTF-8"), '', htmlentities($rowk["hmdok"], ENT_QUOTES, "UTF-8")); 531 break; 532 case $btyp_oeff: // 12 533 tab_zeile('Art', $rowk["art"], $bes, '', $dok); 534 break; 535 // case $btyp_bpkt: // 13 536 // break; 529 537 } 530 538 } -
trunk/info/info/alkisn/alkisbestnw.php
r425 r427 1 1 <?php 2 /* Modul: alkisbestnw.php 3 4 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 5 Bestandsnachweis fÃŒr ein Grundbuch aus ALKIS PostNAS 2 /* alkisbestnw.php 3 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 7 Bestandsnachweis fÃŒr ein Grundbuch (-Blatt) aus ALKIS PostNAS 6 8 7 9 Version: … … 14 16 Tabellenstruktur verbessert und Title bei "Recht an". 15 17 2021-12-30 Bestandsnachweis recursiv ÃŒber alle Buchungs-Ebenen 18 2022-01-13 Functions aus alkisfkt.php in dies Modul verschoben, wenn nur hier verwendet. Neue Functions LnkStf(), DsKy() 16 19 */ 20 21 function bnw_bsdaten($gml_h, $ebene) { 22 /* Bestandsnachweis - Buchungsstellen-Daten 23 "dienende" Buchungsstellen suchen. Miteigentumsanteil, Erbbaurecht usw. 24 Return: gml_id der dienenden Buchungsstelle wenn gefunden? Sonst Leerstring */ 25 global $dbg, $bartkey, $bart, $bartstory, $anteil; 26 27 // dann "dienende" Buchungsstellen 28 // sh=herrschend sd=dienend 29 // ax_buchungsstelle >zu> ax_buchungsstelle (des gleichen Blattes) 30 // ax_buchungsstelle >an> ax_buchungsstelle (anderes Blatt, z.B Erbbaurecht an) 31 // - "zu" kommt in der Praxis (NRW) nicht vor, wird hier nicht berÃŒcksichtigt 32 33 if ($ebene > 5) {echo "\n<p class='err'>Ungewöhnlich tiefe Schachtelung ".$ebene." der Buchungs-Stellen.</p>";} 34 35 $sql ="SELECT sd.gml_id, sd.buchungsart, sd.zaehler, sd.nenner, sd.laufendenummer AS lfd, sd.beschreibungdesumfangsderbuchung AS udb, " 36 ."sd.nummerimaufteilungsplan AS nrap, sd.beschreibungdessondereigentums AS sond, " 37 ."wb.beschreibung AS bart, wb.dokumentation, " 38 ."b.gml_id as gbgml, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung AS blatt, b.blattart, " 39 ."bb.beschreibung AS blattartv, z.bezeichnung AS beznam " 40 ."FROM ax_buchungsstelle sh " 41 ."JOIN ax_buchungsstelle sd ON sd.gml_id=ANY(sh.an) " 42 ."JOIN ax_buchungsblatt b ON b.gml_id=sd.istbestandteilvon " 43 ."LEFT JOIN ax_buchungsart_buchungsstelle wb ON sd.buchungsart = wb.wert " 44 ."LEFT JOIN ax_buchungsblattbezirk z ON b.land=z.land AND b.bezirk=z.bezirk ".UnqKatAmt("b","z") 45 ."LEFT JOIN ax_blattart_buchungsblatt bb ON b.blattart = bb.wert " 46 ."WHERE sh.gml_id= $1 AND sh.endet IS NULL AND sd.endet IS NULL AND b.endet IS NULL AND z.endet IS NULL " 47 ."ORDER BY sd.laufendenummer;"; 48 $v=array($gml_h); // gml_id "herrschende" B-Stelle 49 $resan=pg_prepare("", $sql); 50 $resan=pg_execute("", $v); 51 if (!$resan) { 52 echo "\n<p class='err'>Fehler bei 'dienende Buchungsstelle'.</p>"; 53 if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".htmlentities(str_replace("$1", "'".$gml_bs."'", $sql), ENT_QUOTES, "UTF-8")."</p>";} 54 } 55 $zeianz=pg_num_rows($resan); // Zeilen-Anzahl = Returnwert 56 $und = false; // mehrfaches "Recht an" auf gleicher Ebene 57 while($row= pg_fetch_assoc($resan)) { 58 $gml_bsan=$row["gml_id"]; // id der dien. BS 59 $blatt=ltrim($row["blatt"], "0"); 60 61 // als Global-Var zur Sub-Function: 62 $bartkey=$row["buchungsart"]; 63 $bart=$row["bart"]; // Buchungsart, entschlÃŒsselt 64 $bartstory=htmlentities($row["dokumentation"], ENT_QUOTES, "UTF-8"); 65 if ($row["zaehler"] == "") {$anteil = "";} 66 else {$anteil = $row["zaehler"]."/".$row["nenner"];} 67 68 // Zeile ausgeben Buchungsstelle dienend 69 bnw_bszeile_d($row["bezirk"], $row["beznam"], $blatt, $row["blattart"], $row["blattartv"], $row["lfd"], $row["gbgml"], $gml_bsan, $ebene, $und); 70 $und = true; 71 if ($row["nrap"] != "") { // Nr im Auft.Plan 72 echo "\n<tr>\n\t<td colspan=3></td><td class='nrap' colspan=4>Nummer <span class='wichtig'>".$row["nrap"]."</span> im Aufteilungsplan.</td><td></td>\n</tr>"; 73 } 74 if ($row["sond"] != "") { // Sondereigentumsbeschreibung 75 echo "\n<tr>\n\t<td></td><td class='sond' colspan=6 title='Sondereigentums-Beschreibung'>Verbunden mit dem Sondereigentum an: ".$row["sond"]."</td><td></td>\n</tr>"; 76 } 77 78 // Rekursiver Aufruf der gleichen Function, weitere Ebene dienend? 79 $tiefer = bnw_bsdaten($gml_bsan, ($ebene + 1)); 80 If ($tiefer == 0) { // Wenn nicht, dann kann es FlurstÃŒcke dazu geben 81 $fscnt= bnw_fsdaten($gml_bsan, false); // FlurstÃŒcksdaten 82 } 83 } 84 pg_free_result($resan); 85 return $zeianz; 86 } 87 88 function bnw_fsdaten($gml_bs, $mit_buchung_link) { 89 /* Bestandsnachweis - FlurstÃŒcksdaten 90 Die Tabellenzeilen mit den FlurstÃŒcksdaten zu EINER Buchungsstelle im Bestandsnachweis ausgeben. 91 Die Funktion wird entweder aufgerufen fÃŒr die Buchungen direkt auf dem GB (Normalfall) 92 oder bei Erbbaurecht fÃŒr die mit "an" verknÃŒpften Buchungsstellen der untersten Ebene (dienende Buchung). 93 Der Tabellenkopf wird im aufrufenden Programm ausgegeben. 94 Return: Anzahl der ausgegebenen FlurstÃŒcke */ 95 global $dbg, $gkz, $showkey, $filtkreis, $filtgem, $trclass, $katAmtMix, $lfdnr, $altlfdnr, $bartkey, $bart, $bartstory, $anteil; 96 97 $sql="SELECT g.gemarkungsnummer, g.bezeichnung, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche " 98 ."FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer ".UnqKatAmt("f","g") 99 ."WHERE f.endet IS NULL AND g.endet IS NULL AND f.istgebucht = $1 "; 100 if ($filtgem === '') { // ungefiltert 101 $v=array($gml_bs); 102 } else { 103 $sql.="AND f.gemeindezugehoerigkeit_kreis = $2 AND f.gemeindezugehoerigkeit_gemeinde = $3 "; // ZustÀndiges Gebiet 104 $v=array($gml_bs, $filtkreis, $filtgem); 105 } 106 $sql.="ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;"; 107 $resf = pg_prepare("", $sql); 108 $resf = pg_execute("", $v); 109 if (!$resf) {echo "\n<p class='err'>Fehler bei Flurstück</p>";} 110 $zeianz=pg_num_rows($resf); 111 while($rowf = pg_fetch_assoc($resf)) { 112 $fskenn=$rowf["zaehler"]; 113 if ($rowf["nenner"] != "") { // Bruch 114 $fskenn.="/".$rowf["nenner"]; 115 } 116 $flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m²"; 117 118 echo "\n<tr class='".$trclass."'>"; // eine Zeile je Flurstueck 119 120 // Sp. 1-3 der Tab. Daten aus Buchungsstelle, nicht aus FS 121 if($lfdnr === $altlfdnr) { // gleiches GrundstÃŒck, leer lassen 122 echo "\n\t<td> </td>" 123 ."\n\t<td> </td>" 124 ."\n\t<td> </td>"; 125 } else { // Sprungmarke, BVNR 126 $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 127 echo "\n\t<td id='bvnr".$bvnr."'><span class='wichtig'>".$bvnr."</span>\n\t</td>" 128 ."\n\t<td title ='".$bartstory."'>".DsKy($bartkey, 'Buchungsart-*').$bart."</td>" 129 ."\n\t<td> </td>"; 130 $altlfdnr=$lfdnr; 131 } 132 133 // Sp. 4-7 aus FlurstÃŒck 134 echo "\n\t<td>".DsKy($rowf["gemarkungsnummer"], 'Gemarkungsnummer').$rowf["bezeichnung"]."</td>" 135 ."\n\t<td>".$rowf["flurnummer"]."</td>\n\t<td class='fsnr'><span class='wichtig'>".$fskenn."</span></td>" 136 ."\n\t<td class='fla'>".$flae."</td>" 137 ."\n\t<td>\n\t\t<p class='nwlink noprint'>"; 138 139 // Buchung BVNR 140 If ($mit_buchung_link == true) { // nur bei GrundstÃŒck 141 echo "\n\t\t\t<a href='alkisgsnw.php?gkz=".$gkz."&gmlid=".$gml_bs.LnkStf() 142 ."' title='Grundstücksnachweis'>Buchung <img src='ico/Grundstueck_Link.png' width='16' height='16' alt=''></a> "; 143 $mit_buchung_link = false; // nur in erster Zeile 144 } 145 // Flurstk. 146 echo "\n\t\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n".LnkStf()."' title='Flurstücksnachweis'>Flurstück " 147 ."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>" 148 ."\n\t\t</p>\n\t</td>\n</tr>"; 149 } 150 pg_free_result($resf); 151 return $zeianz; 152 } 153 154 function bnw_bszeile_h() { 155 /* Bestandsnachweis - Buchungs-Stellen-Zeile ausgeben - herrschend. 156 Die GB-Daten hierzu stehen bereits im Kopf und bleiben in der Tab. leer */ 157 global $dbg, $gkz, $trclass, $lfdnr, $bartkey, $bart, $bartstory, $anteil; 158 159 $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 160 echo "\n<tr class='".$trclass."'>" 161 ."\n\t<td id='bvnr".$bvnr."'><span class='wichtig'>".$bvnr."</span></td>" // Sprungmarke=BVNR auf dem GB-Blatt 162 ."\n\t<td class='dien' title='".$bartstory."'>".DsKy($bartkey, 'Buchungsart-*').$bart."</td>" 163 ."\n\t<td class='dien'>".$anteil."</td>" 164 ."\n\t<td colspan=5> </td>\n</tr>"; 165 } 166 167 function bnw_bszeile_d($bezkey, $beznam, $blatt, $blattartkey, $blattart, $lfdnran, $gbgml, $gml_bsan, $ebene, $und) { 168 /* Bestandsnachweis - Buchungsstellen-Zeile ausgeben - dienend 169 Eine Folge-Zeile fÃŒr eine dienende Buchung ausgeben. */ 170 global $gkz, $trclass, $bartkey, $bart, $bartstory, $anteil; 171 172 $bvnr=str_pad($lfdnran, 4, "0", STR_PAD_LEFT); 173 $filler=str_repeat(" ", $ebene - 2); // 3 und 4 EinrÃŒcken 174 if ($und){$filler.="und ";}; // Unterscheidung Hierarchie (Ebene wechselt) von Liste (gleiche Ebene) 175 echo "\n<tr class='".$trclass."'>" 176 ."\n\t<td title='Ebene ".$ebene."'>".$filler."an</td>" 177 ."\n\t<td class='dien' title='".$bartstory."'>".DsKy($bartkey, 'Buchungsart-*').$bart."</td>" 178 ."\n\t<td class='dien'>".$anteil."</td>"; 179 180 // Sp.4 GB-Bezirk 181 echo "\n\t<td class='dien' title='Grundbuch-Bezirk'>".DsKy($bezkey, 'Grundbuch-Bezirk-*').htmlentities($beznam, ENT_QUOTES, "UTF-8")."</td>" 182 ."\n\t<td class='dien' title='".$blattart."'>".$blatt."</td>" 183 ."\n\t<td class='dien' title='Bestandsverzeichnis-Nummer'>".$bvnr."</td>" 184 ."\n\t<td class='dien'></td>"; 185 186 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; 187 188 // Link Bestand Blatt 189 echo "\n\t\t\t".DsKy($blattartkey, 'Blatt-Art-*')."<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gbgml.LnkStf() 190 ."#bvnr".$lfdnran."' title='Zum Grundbuchnachweis des dienenden Blattes'>".$blattart 191 ." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>"; 192 193 if ($bartkey < 2000){ 194 // Link Buchung BVNR nur fÃŒr GrundstÃŒck usw. 195 echo "<br>\n\t\t\t<a href='alkisgsnw.php?gkz=".$gkz."&gmlid=".$gml_bsan.LnkStf() 196 ."' title='Grundstücksnachweis'>Buchung <img src='ico/Grundstueck_Link.png' width='16' height='16' alt=''></a>"; 197 } 198 echo "\n\t\t</p>" 199 ."\n\t</td>\n</tr>"; 200 } 201 202 // Start 17 203 ini_set("session.cookie_httponly", 1); 18 204 session_start(); … … 57 243 58 244 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 59 $dbg=$debug; // CONF in Arbeits-Variable 60 61 // Entwicklungsumgebung (in Conf definiert) ausschalten. 245 $dbg=$debug; 62 246 if ($nodebug === "j") {$dbg=0;} 63 247 … … 112 296 } 113 297 echo "\n\t\t\t<tr>" 114 ."\n\t\t\t<td class='head'>"; 115 if ($showkey) {echo "<span class='key'>".$row["stellenart"]." </span>";} 116 echo $row["stellev"]."</td>"; 117 echo "\n\t\t\t<td class='head'>Bezirk</td>" 118 ."\n\t\t\t\t<td class='head' title='".htmlentities($row["blattartd"], ENT_QUOTES, "UTF-8")."'>"; 119 if ($showkey) {echo "<span class='key'>".$blattkey." </span>";} 120 echo $blattart."</td>" 298 ."\n\t\t\t\t<td class='head'>".DsKy($row["stellenart"], 'Stellenart-*').$row["stellev"]."</td>" 299 ."\n\t\t\t\t<td class='head'>Bezirk</td>" 300 ."\n\t\t\t\t<td class='head' title='".htmlentities($row["blattartd"], ENT_QUOTES, "UTF-8")."'>".DsKy($blattkey, 'Blattart-*').$blattart."</td>" 121 301 ."\n\t\t\t</tr>\n\t\t\t<tr>" 122 ."\n\t\t\t\t<td title='Amtsgerichtsbezirk'>"; 123 if ($showkey) {echo "<span class='key'>".$row["stelle"]."</span><br>";} 124 echo htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8")."</td>" 125 ."\n\t\t\t\t<td title='Grundbuchbezirk'>"; 126 if ($showkey) {echo "<span class='key'>".$row["bezirk"]."</span><br>";} 127 echo htmlentities($row["beznam"], ENT_QUOTES, "UTF-8")."</td>" 302 ."\n\t\t\t\t<td title='Amtsgerichtsbezirk'>".DsKy($row["stelle"], 'Stelle-*').htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8")."</td>" 303 ."\n\t\t\t\t<td title='Grundbuchbezirk'>".DsKy($row["bezirk"], 'Grundbuchbezirk-*').htmlentities($row["beznam"], ENT_QUOTES, "UTF-8")."</td>" 128 304 ."\n\t\t\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$blatt."</span></td>" 129 305 ."\n\t\t\t</tr>" … … 136 312 echo "\n<p>Keine Angaben zum Eigentum bei fiktivem Blatt.</p>"; 137 313 } else { // E I G E N T à M E R 138 $n = eigentuemer($gmlid, true, ""); // MIT Adressen.314 $n = eigentuemer($gmlid, true, false); // MIT Adressen. 139 315 if ($n === 0) { // keine NamensNr, kein Eigentuemer 140 316 echo "\n<p class='err'>Keine Namensnummer gefunden.</p>" … … 240 416 241 417 $zeianz = bnw_fsdaten($gml_bs, true); // FlurstÃŒcksdaten zur direkten Buchungsstelle 242 if ($zeianz === 0) {echo "\n<tr class='".$trclass."'>\n\t<td></td>\n\t<td colspan='7'><p class='warn'>Keine Flurstücke im berechtigten Bereich.</p></td>\n\t<td></td>\n</tr>";} 418 if ($zeianz === 0) { 419 echo "\n<tr class='".$trclass."'>\n\t<td><span class='wichtig'>".$lfdnr."</span></td>" 420 ."\n\t<td colspan='7'><p class='warn'>Keine Flurstücke im berechtigten Bereich.</p></td>\n\t<td></td>\n</tr>"; 421 } 243 422 244 423 } else { // herrschende Buchung … … 291 470 $zpaar=false; 292 471 while($rowb = pg_fetch_assoc($resb)) { 293 if ($b === 0) { // Ueberschrift und Tabelle nur ausgeben, wenn etwas gefunden wurde472 if ($b === 0) { // Ãberschrift und Tabelle nur ausgeben, wenn etwas gefunden wurde 294 473 echo "\n\n<h3><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Berechtigte Grundbücher</h3>" 295 ."\n<table class='outer'>" 296 ."\n<tr>" 297 ."\n\t<td class='heads' title='lfd. Nr. auf diesem Blatt, wie im Teil Flurstücke'><span class='wichtig'>an BVNR</span><img src='ico/sort.png' width='10' height='10' alt='' title='primäre Sortierung'></td>" 298 ."\n\t<td class='head'>Dienststelle</td>" 299 ."\n\t<td class='heads'>Bezirk</td>" 300 ."\n\t<td class='heads'><span class='wichtig'>Blatt</span></td>" 301 ."\n\t<td class='heads'>BVNR</td>" 302 ."\n\t<td class='head'>Buchungsart</td>" 303 ."\n\t<td class='head nwlink noprint'>Weitere Auskunft</td>" 304 ."\n</tr>"; 474 ."\n<table class='outer'>\n<tr>" 475 ."\n\t<td class='heads' title='lfd. Nr. auf diesem Blatt, wie im Teil Flurstücke'><span class='wichtig'>an BVNR</span><img src='ico/sort.png' width='10' height='10' alt='' title='primäre Sortierung'></td>" 476 ."\n\t<td class='head'>Dienststelle</td>" 477 ."\n\t<td class='heads'>Bezirk</td>" 478 ."\n\t<td class='heads'><span class='wichtig'>Blatt</span></td>" 479 ."\n\t<td class='heads'>BVNR</td>" 480 ."\n\t<td class='head'>Buchungsart</td>" 481 ."\n\t<td class='head nwlink noprint'>Weitere Auskunft</td>\n</tr>"; 305 482 } 306 483 … … 324 501 ."\n\t<td>"; // Amtsgericht,Grundbuchamt 325 502 echo htmlentities($rowb["stellev"], ENT_QUOTES, "UTF-8")." "; 326 if ($showkey) {echo "<span class='key'>".$rowb["stelle"]."</span> ";} 327 echo htmlentities($rowb["bezeichnung"], ENT_QUOTES, "UTF-8") 503 echo DsKy($rowb["stelle"], 'Stelle-*').htmlentities($rowb["bezeichnung"], ENT_QUOTES, "UTF-8") 328 504 ."</td>" 329 ."\n\t<td>"; 330 if ($showkey) {echo "<span class='key'>".$rowb["bezirk"]."</span> ";} 331 echo htmlentities($rowb["beznam"], ENT_QUOTES, "UTF-8") 332 ."</td>" 505 ."\n\t<td>".DsKy($rowb["bezirk"], 'Grundbuch-Bezirk-*').htmlentities($rowb["beznam"], ENT_QUOTES, "UTF-8")."</td>" 333 506 ."\n\t<td><span class='wichtig'>".$blatt."</span></td>" 334 507 ."\n\t<td>".$bvnr."</td>" 335 ."\n\t<td title='".htmlentities($rowb["bartd"], ENT_QUOTES, "UTF-8")."'>"; 336 if ($showkey) {echo "<span class='key'>".$buch."</span> ";} 337 echo $bart 338 ."</td>" 508 ."\n\t<td title='".htmlentities($rowb["bartd"], ENT_QUOTES, "UTF-8")."'>".DsKy($buch, 'Buchungsart-*').$bart."</td>" 339 509 ."\n\t<td>" 340 510 ."\n\t\t<p class='nwlink noprint'>"; 341 342 511 // Bestand 343 if ($showkey) {echo "<span class='key'>".$blart."</span> ";} 344 echo "\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gml_b; 345 if ($showkey) {echo "&showkey=j";} 346 echo "#bvnr".$lfdnr."' title='Nachweis des berechtigten Blattes an einer Buchung auf ".$blattart."'>".$rowb["blattartv"]; 347 echo " \n\t\t\t<img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>"; 348 echo "\n\t\t</p>" 512 echo "\n\t\t\t".DsKy($blart, 'Blattart-*')."<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gml_b.LnkStf() 513 ."#bvnr".$lfdnr."' title='Nachweis des berechtigten Blattes an einer Buchung auf ".$blattart."'>".$rowb["blattartv"] 514 ." \n\t\t\t<img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>" 515 ."\n\t\t</p>" 349 516 ."</td>" 350 517 ."\n</tr>"; -
trunk/info/info/alkisn/alkisexport.php
r425 r427 1 1 <?php 2 /* Modul alkisexport.php 3 2 /* alkisexport.php 3 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 4 7 CSV-Export von ALKIS-Daten zu einem Flurstueck, Grundbuch, EigentÃŒmer oder StraÃe. 5 8 Es wird eine GML-ID ÃŒbergeben. … … 67 70 } 68 71 69 // HIER START 70 72 // START 71 73 $tabtyp=''; $haus=''; // Var. init. 72 74 $cntget = extract($_GET); // Parameter in Variable umwandeln … … 101 103 include "alkis_conf_location.php"; 102 104 include "alkisfkt.php"; 103 104 // BerechtigungsprÃŒfung fÃŒr CSV vorÃŒbergehend deaktiviert weil darin HTML-Meldungen ausgegeben werden.105 // ggf. dies per Option verhindern und wieder aktivieren.106 //$erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('Abbruch'); }107 105 108 106 if ($tabtyp === '') { // Parameter (-kombinationen) prÃŒfen -
trunk/info/info/alkisn/alkisfkt.php
r425 r427 1 1 <?php 2 /* Modul: alkisfkt.php 3 4 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 5 F u n c t i o n s 2 /* alkisfkt.php 3 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 7 F u n c t i o n s , die von mehreren Modulen verwendet werden. 6 8 7 9 Version: … … 15 17 Footer: Umschalter fÃŒr SchlÃŒssel und Debug unabhÀngig benutzbar. Authentifizierung aus QWC2 nicht hier behandeln. 16 18 2021-12-30 Bestandsnachweis recursiv ÃŒber alle Buchungs-Ebenen 17 18 ++ ToDo: 19 - Parameter $lnkclass in eigentuemer() und $jfenster in buchung_anzg() vereinheitlichen 19 2022-01-13 Functions in Fach-Modul verschoben, wenn nur von einem verwendet. Neue Functions LnkStf(), DsKy() 20 20 */ 21 21 … … 67 67 68 68 function footer($gmlid, $link, $append) { 69 70 71 72 69 // Einen Seitenfuà ausgeben. 70 // Die Parameter &gkz= und &gmlid= kommen in allen Modulen einheitlich vor 71 // Den URL-Parameter "&showkey=j/n" umschalten lassen. 72 // $append wird angehÀngt wenn gefÃŒllt. Anwendung: &eig=j bei FSNW, <yp=m/p/o bei Lage 73 73 global $gkz, $showkey, $hilfeurl, $debug, $dbg, $customer; 74 74 … … 78 78 ."\n\t\t<table class='outer'>\n\t\t<tr>"; 79 79 80 // Sp alte1: Info Benutzerkennung80 // Sp.1: Info Benutzerkennung 81 81 if (isset($customer) and $customer != '') { // ÃŒber global von fkt. darf_ich() 82 82 echo "\n\t\t\t<td title='Info'><i>Benutzer: ".$customer."</i></td>"; … … 85 85 } 86 86 87 // Spalte 2: Umschalter 87 // Sp.2: Umschalter 88 // +++ ToDo: Texte eindeutiger machen, z.B. Anzeige der SchlÃŒssel ist an >> aus // Anzeige der SchlÃŒssel ist aus >> an 89 // oder als Formular / Option-Element 88 90 echo "\n\t\t\t<td title='Konfiguration'>"; 89 91 $mylink ="\n\t\t\t\t<a class='keyswitch' href='".$link."gkz=".$gkz."&gmlid=".$gmlid.$append; … … 111 113 echo "\n\t\t\t</td>"; 112 114 113 // Sp alte3: Dokumentation115 // Sp.3: Dokumentation 114 116 echo "\n\t\t\t<td title='Hilfe'>" 115 117 ."\n\t\t\t\t<p class='nwlink'>\n\t\t\t\t\t<a target='_blank' href='".$hilfeurl."' title='Dokumentation'>Hilfe zur ALKIS-Auskunft</a>\n\t\t\t\t</p>\n\t\t\t</td>" … … 128 130 function UnqKatAmt($t1, $t2){ 129 131 // Wenn der Datenbestand aus NBA-Verfahren mehrerer KatasterÀmter gemixt wurde, dann muss beim SQL-JOIN auf einige SchlÃŒsseltabellen 130 // zusÀtzlich dafÃŒr gesort werden, dass nur die SchlÃŒssel des gleichen Katasteramtes verwendet werden. Son t bekommt man redundante Treffer.132 // zusÀtzlich dafÃŒr gesort werden, dass nur die SchlÃŒssel des gleichen Katasteramtes verwendet werden. Sonst bekommt man redundante Treffer. 131 133 // Benötigt den Alias der zu verbindenden Tabellen. 132 134 // Liefert einen String zum EinfÃŒgen hinter "JOIN .. ON". … … 139 141 } 140 142 143 function LnkStf(){ 144 // Link-Staffeltab - Die Parameter showkey und nodebug im href eines <a>-Tag an ein anderes Modul weiter geben. 145 // Gibt einen String zurÃŒck, der im href eingefÃŒgt wird. 146 global $debug, $dbg, $showkey; 147 148 if ($showkey) { // SchlÃŒssel anzeigen 149 $ret="&showkey=j"; 150 } else { 151 $ret=""; 152 } 153 154 // Nur relevant in einer Entwicklungsumgebung: 155 // Falls debug-Ausgaben erlaubt sind (conf) kann man das temporÀr einschrÀnken, umgekehrt nicht. 156 // $dbg = aktueller Arbeitswert, $debug = aus Conf. 157 if ($dbg === 0 AND $debug > 0){ 158 $ret.="&nodebug=j"; 159 } 160 return $ret; 161 } 162 163 function DsKy($derKey, $Tipp){ 164 // Display Key - Optional einen ALKIS-internen SchlÃŒsselwert vor dem entschlÃŒsselten Wert ausgeben. 165 // Die Option wird gesteuert durch einen Schalter im SeitenfuÃ. 166 // Liefert einen HTML-Text zur Verwendung in einem Echo-Befehl. Zur Verkettung mit Literalen. 167 global $showkey; 168 $Tipp = str_replace("*", "Schlüssel", $Tipp); // hÀufig verwendet 169 if ($showkey and $derKey != "") { 170 $html="<span class='key' title='".$Tipp."'>(".$derKey.") </span>"; 171 } else { 172 $html=""; 173 } 174 return $html; 175 } 176 141 177 function ber_bs_zaehl($gmls) { 142 // Berechtigte Buchungs-Stellen zaehlen.178 // Berechtigte Buchungs-Stellen zÀhlen. 143 179 144 180 // Buchungstelle dienend <(Recht)an< Buchungstelle herrschend … … 148 184 $resan = pg_prepare("", $sql); 149 185 $resan = pg_execute("", $v); 150 if (!$resan) {echo "\n<p class='err'>Fehler bei 'berechtigte Buchungsstellen z aehlen'.</p>";}186 if (!$resan) {echo "\n<p class='err'>Fehler bei 'berechtigte Buchungsstellen zählen'.</p>";} 151 187 $rowan = pg_fetch_assoc($resan); 152 188 $anz=$rowan["anz"]; … … 156 192 157 193 function buchung_anzg($gmlbs, $eig, $jsfenster, $gml_fs, $trtyp) { 158 159 160 161 162 163 164 194 // In einem FS-Nachw. EINE Buchungsstelle anzeigen. 195 // Parameter: 196 // $gmlbs: GML-ID der anzuzeigenden Buchungs-Stelle 197 // $eig: EigentÃŒmer ausgeben j/n 198 // $jsfenster: Javascript-Funktion zum Verlassen des Feature-Info-Fensters verwenden (bool) 199 // $gml_fs: GML-ID des FlurstÃŒcke (nur bei erstem Aufruf in einem FS-Nachweis notwendig) 200 // $trtyp: Tabellen-Zeilen-Typ. Werte: 1="mit GS-Link", 2="ohne GS-Link", 3="ohne GS-Link +Zeile einfÀrben" 165 201 global $gkz, $dbg, $showkey, $bartgrp, $barttypgrp, $stufe, $katAmtMix; 166 202 … … 190 226 } 191 227 if ($rowbs = pg_fetch_assoc($resbs)) { // EIN Treffer 192 $blattkeyber=$rowbs["blattart"]; // Schl uessel von Blatt-Art des GB228 $blattkeyber=$rowbs["blattart"]; // SchlÃŒssel von Blatt-Art des GB 193 229 if ($blattkeyber != '5000' or $dbg > 1) { // "Fiktives Blatt" nur bei Entwicklung anzeigen 194 230 $gezeigt = 1; // Funktionswert nach Treffer … … 203 239 $blatt=ltrim($rowbs["blatt"], "0"); 204 240 $lfd=ltrim($rowbs["lfd"], "0"); 205 if ($bartkey != $bartgrp) { // Wechsel derBuchungsart241 if ($bartkey != $bartgrp) { // Wechsel Buchungsart 206 242 $barttitle=$rowbs["barttitle"]; // Buchungsart ErklÀrung 207 243 switch (true) { // Die Buchungsart einem Typ (Gruppierung) zuweisen … … 221 257 echo "\n\t<tr>\n\t\t<td colspan='3'>\n\t\t\t<h3 id='gb'>".$h3txt."</h3>\n\t\t</td>"; // 1-3 222 258 echo "\n\t\t<td>\n\t\t\t<p class='nwlink noprint'>" // 4 223 ."\n\t\t\t\t<a href='".selbstverlinkung()."?gkz=".$gkz."&gmlid=".$gml_fs; 224 if ($showkey) {echo "&showkey=j";} 225 if ($eig=="j") { // Umschalter: FS-Nachweis ruft sich selbst mit geaendertem Parameter auf. Positionierung auf Marke "#gb" 259 ."\n\t\t\t\t<a href='".selbstverlinkung()."?gkz=".$gkz."&gmlid=".$gml_fs.LnkStf(); 260 if ($eig=="j") { // Umschalter: FS-Nachweis ruft sich selbst mit geÀndertem Param. auf. Pos. auf Marke "#gb" 226 261 echo "&eig=n#gb' title='Umschalter: Flurstücksnachweis'>ohne Eigentümer</a>"; 227 262 } else { … … 236 271 $barttypgrp = $barttyp; 237 272 } 238 239 // ++ mehr Abstand oben zur Zeile in .css?240 273 echo "\n\t<tr>" // Buchungsart als Zwischenzeile 241 ."\n\t\t<td class='ll'><img src='ico/Grundbuch.png' width='16' height='16' alt=''> Buchungsart:</td>" // 1 242 ."\n\t\t<td colspan='2' title='".$barttitle."'>"; // 2-3 243 if ($showkey) {echo "<span class='key' title='Buchungsart'>(".$bartkey.")</span> ";} 244 echo "<span class='wichtig'>".$bart."</span>" 245 ."</td>" 246 ."\n\t\t<td></td>" // 4 274 ."\n\t\t<td class='ll'><img src='ico/Grundbuch.png' width='16' height='16' alt=''> Buchungsart:</td>" 275 ."\n\t\t<td colspan='2' title='".$barttitle."'>".DsKy($bartkey, 'Buchungsart')."<span class='wichtig'>".$bart."</span>" 276 ."</td>\n\t\t<td></td>" // 4 247 277 ."\n\t</tr>"; 248 278 $bartgrp=$bartkey; // Gruppe merken … … 261 291 } 262 292 echo "\n\t\t\t<tr>" 263 ."\n\t\t\t\t<td class='head'>Bezirk</td>" 264 ."\n\t\t\t\t<td class='head'>"; 265 if ($showkey) {echo "<span class='key' title='Blattart'>(".$blattkeyber.")</span> ";} 266 echo $blattartber."</td>" 267 ."\n\t\t\t\t<td class='head'>Lfd-Nr</td>" 293 ."\n\t\t\t\t<td class='head'>Bezirk</td>" 294 ."\n\t\t\t\t<td class='head'>".DsKy($blattkeyber, 'Blattart-*').$blattartber."</td>" 295 ."\n\t\t\t\t<td class='head'>Lfd-Nr</td>" 268 296 ."\n\t\t\t</tr>"; 269 297 … … 273 301 echo "\n\t\t\t<tr>"; 274 302 } 275 echo "\n\t\t\t\t<td title='Grundbuchbezirk'>"; 276 if ($showkey) {echo "<span class='key' title='GB-Bezirk-Schlüssel'>".$rowbs["bezirk"]."</span><br>";} 277 echo $beznam."</td>" 278 ."\n\t\t\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$blatt."</span></td>" 279 ."\n\t\t\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundstück)'>".$lfd."</td>" 303 echo "\n\t\t\t\t<td title='Grundbuchbezirk'>".DsKy($rowbs["bezirk"], 'GB-Bezirk-*').$beznam."</td>" 304 ."\n\t\t\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$blatt."</span></td>" 305 ."\n\t\t\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundstück)'>".$lfd."</td>" 280 306 ."\n\t\t\t</tr>" 281 307 ."\n\t\t\t</table>"; … … 293 319 294 320 echo "\n\t\t<td>"; // 4 295 echo "\n\t\t\t<p class='nwlink noprint'>" ;321 echo "\n\t\t\t<p class='nwlink noprint'>".DsKy($blattkeyber, 'Blattart-*'); 296 322 // Bestand 297 if ($showkey) {echo "<span class='key' title='Blattart'>(".$blattkeyber.")</span> ";} 298 $url="alkisbestnw.php?gkz=".$gkz."&gmlid=".$gbgml; 299 if ($showkey) {$url.="&showkey=j";} 323 $url="alkisbestnw.php?gkz=".$gkz."&gmlid=".$gbgml.LnkStf(); 300 324 if ($jsfenster) {$url="javascript:imFenster(\"".$url."\")";} // Sonderfall "Inlay" aus Feature-Info 301 325 echo "\n\t\t\t\t<a href='".$url."' title='Grundbuchnachweis'>".$blattartber 302 ." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''>" 303 ."</a>"; 326 ." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>"; 304 327 // Buchung 305 328 if ($trtyp === 1) { 306 echo "<br>"; 307 if ($showkey) {echo "<span class='key' title='Buchungsart'>(".$bartkey.")</span> ";} 308 $url="alkisgsnw.php?gkz=".$gkz."&gmlid=".$hgml; 309 if ($showkey) {$url.="&showkey=j";} 329 echo "<br>".DsKy($bartkey, 'Buchungsart'); 330 $url="alkisgsnw.php?gkz=".$gkz."&gmlid=".$hgml.LnkStf(); 310 331 if ($jsfenster) {$url="javascript:imFenster(\"".$url."\")";} 311 332 echo "\n\t\t\t\t<a href='".$url."' title='GrundstÃŒcksnachweis: ".$bart."'>Buchung" 312 ." <img src='ico/Grundstueck_Link.png' width='16' height='16' alt=''>" 313 ."</a>"; 333 ." <img src='ico/Grundstueck_Link.png' width='16' height='16' alt=''></a>"; 314 334 } 315 335 echo "\n\t\t\t</p>" 316 ."\n\t\t</td>" // 4336 ."\n\t\t</td>" 317 337 ."\n\t</tr>"; 318 338 if ($eig === "j") { 319 if ($jsfenster) {$lnkclass = "imFenster";} else {$lnkclass = "";} 320 $n = eigentuemer($gbgml, true, $lnkclass); // mit Adresse 339 $n = eigentuemer($gbgml, true, $jsfenster); // mit Adresse 321 340 } 322 341 } 323 342 } 324 343 pg_free_result($resbs); 325 326 //if ($dbg > 1) {echo "\n<p class='dbg'>Ende function buchung_anzg(), Return = ". $gezeigt ."</p>";}327 328 344 return $gezeigt; // 1 wenn eine Buchung ausgegeben wurde 329 345 } 330 346 331 347 function ber_bs_anzg($gmls, $eig, $jsfenster, $gml_fs, $gsanfrd) { 332 333 334 335 336 337 338 348 // In einem FS-Nachw. die berechtigten (herrschenden) Buchungsstellen anzeigen z.B. "Wohnungs-/Teileigentum". 349 // Parameter: 350 // $gmls: GML-ID der dienenden Buchungs-Stelle. Im ersten Durchlauf also, die BS auf der das FS gebucht ist. 351 // $eig: EigentÃŒmer ausgeben j/n 352 // $jsfenster: Javascript-Funktion zum Verlassen des Feature-Info-Fensters verwenden (bool) 353 // $gml_fs: GML-ID des FlurstÃŒcke (nur bei erstem Aufruf in einem FS-Nachweis notwendig) 354 // $gsanfrd: In einem GS-Nachw. die GML-ID der in de URL angeforderten Buchungsstelle (-> Hervorhebung) 339 355 global $dbg, $gezeigt; 340 356 … … 379 395 380 396 function kurz_namnr($lang) { 381 397 // Namensnummer kÃŒrzen. Nicht benötigte Stufen der Dezimalklassifikation abschneiden 382 398 $kurz=str_replace(".00","",$lang); // leere Stufen (nur am Ende) 383 399 $kurz=str_replace("0000","",$kurz); // ganz leer (am Anfang) 384 $kurz=ltrim($kurz, "0"); // f uehr. Nullen385 $kurz=str_replace(".0",".",$kurz); // f uehr. Null jeder Stufe400 $kurz=ltrim($kurz, "0"); // fÃŒhrd. Nullen 401 $kurz=str_replace(".0",".",$kurz); // fÃŒhrd. Null jeder Stufe 386 402 $kurz=rtrim($kurz); // Leerzeichen hinten 387 // echo "/n<p class='dbg'> lang='".$lang."'</p>/n<p class='dbg'> kurz='".$kurz."'</p>";388 403 return $kurz; 389 404 } 390 405 391 function bnw_bszeile_h() { 392 /* Bestandsnachweis - Buchungs-Stellen-Zeile ausgeben - herrschend. 393 Die GB-Daten hierzu stehen bereits im Kopf und bleiben in der Tab. leer */ 394 global $dbg, $gkz, $showkey, $trclass, $lfdnr, $bartkey, $bart, $bartstory, $anteil; 395 396 $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 397 echo "\n<tr class='".$trclass."'>" 398 ."\n\t<td id='bvnr".$bvnr."'><span class='wichtig'>".$bvnr."</span></td>" // Sprungmarke=BVNR auf dem GB-Blatt 399 ."\n\t<td class='dien' title='".$bartstory."'>"; 400 if ($showkey) {echo "<span class='key'>".$bartkey."</span> ";} 401 echo $bart."</td>" 402 ."\n\t<td class='dien'>".$anteil."</td>" 403 ."\n\t<td> </td>" 404 ."\n\t<td> </td>" 405 ."\n\t<td> </td>" 406 ."\n\t<td> </td>" 407 ."\n\t<td> </td>\n</tr>"; 408 } 409 410 function bnw_bszeile_d($bezkey, $beznam, $blatt, $blattartkey, $blattart, $lfdnran, $gbgml, $gml_bsan, $ebene, $und) { 411 /* Bestandsnachweis - Buchungsstellen-Zeile ausgeben - dienend 412 Eine Folge-Zeile fÃŒr eine dienende Buchung ausgeben. */ 413 global $gkz, $showkey, $trclass, $bartkey, $bart, $bartstory, $anteil; 414 415 $bvnr=str_pad($lfdnran, 4, "0", STR_PAD_LEFT); 416 $filler=str_repeat(" ", $ebene - 2); // 3 und 4 EinrÃŒcken 417 if ($und){$filler.="und ";}; // Unterscheidung Hierarchie (Ebene wechselt) von Liste (gleiche Ebene) 418 echo "\n<tr class='".$trclass."'>" 419 ."\n\t<td title='Ebene ".$ebene."'>".$filler."an</td>" 420 ."\n\t<td class='dien' title='".$bartstory."'>"; // Sp.2 Buchungsart 421 if ($showkey) {echo "<span class='key'>".$bartkey."</span> ";} 422 echo $bart."</td>" 423 ."\n\t<td class='dien'>".$anteil."</td>"; // Sp.3 Anteil 424 425 // Sp.4 GB-Bezirk 426 echo "\n\t<td class='dien' title='Grundbuch-Bezirk'>"; 427 if ($showkey) {echo "<span class='key'>".$bezkey."</span> ";} 428 echo htmlentities($beznam, ENT_QUOTES, "UTF-8") 429 ."</td>" 430 ."\n\t<td class='dien' title='".$blattart."'>".$blatt."</td>" // Sp.5 431 ."\n\t<td class='dien' title='Bestandsverzeichnis-Nummer'>".$bvnr."</td>" // Sp.6 432 ."\n\t<td class='dien'></td>"; 433 434 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; // Sp.8 Link 435 436 // Link Bestand Blatt 437 if ($showkey) {echo "<span class='key'>".$blattartkey."</span>";} // Blatt-Art 438 echo "\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gbgml; 439 if ($showkey) {echo "&showkey=j";} 440 echo "#bvnr".$lfdnran."' title='Zum Grundbuchnachweis des dienenden Blattes'>".$blattart 441 ." <img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>"; 442 443 if ($bartkey < 2000){ 444 // Link Buchung BVNR nur fÃŒr GrundstÃŒck usw. 445 echo "<br>\n\t\t\t<a href='alkisgsnw.php?gkz=".$gkz."&gmlid=".$gml_bsan; 446 if ($showkey) {echo "&showkey=j";} 447 echo "' title='Grundstücksnachweis'>Buchung <img src='ico/Grundstueck_Link.png' width='16' height='16' alt=''></a>"; 448 } 449 450 echo "\n\t\t</p>" 451 ."\n\t</td>\n</tr>"; 452 } 453 454 function bnw_bsdaten($gml_h, $ebene) { 455 /* Bestandsnachweis - Buchungsstellen-Daten 456 "dienende" Buchungsstellen suchen. Miteigentumsanteil, Erbbaurecht usw. 457 Return: gml_id der dienenden Buchungsstelle wenn gefunden? Sonst Leerstring */ 458 global $dbg, $bartkey, $bart, $bartstory, $anteil; 459 460 // dann "dienende" Buchungsstellen 461 // sh=herrschend sd=dienend 462 // ax_buchungsstelle >zu> ax_buchungsstelle (des gleichen Blattes) 463 // ax_buchungsstelle >an> ax_buchungsstelle (anderes Blatt, z.B Erbbaurecht an) 464 // - "zu" kommt in der Praxis (NRW) nicht vor, wird hier nicht berÃŒcksichtigt 465 466 if ($ebene > 5) {echo "\n<p class='err'>Ungewöhnlich tiefe Schachtelung ".$ebene." der Buchungs-Stellen.</p>";} 467 468 $sql ="SELECT sd.gml_id, sd.buchungsart, sd.zaehler, sd.nenner, sd.laufendenummer AS lfd, sd.beschreibungdesumfangsderbuchung AS udb, " 469 ."sd.nummerimaufteilungsplan AS nrap, sd.beschreibungdessondereigentums AS sond, " 470 ."wb.beschreibung AS bart, wb.dokumentation, " 471 ."b.gml_id as gbgml, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung AS blatt, b.blattart, " 472 ."bb.beschreibung AS blattartv, z.bezeichnung AS beznam " 473 ."FROM ax_buchungsstelle sh " 474 ."JOIN ax_buchungsstelle sd ON sd.gml_id=ANY(sh.an) " 475 ."JOIN ax_buchungsblatt b ON b.gml_id=sd.istbestandteilvon " 476 ."LEFT JOIN ax_buchungsart_buchungsstelle wb ON sd.buchungsart = wb.wert " 477 ."LEFT JOIN ax_buchungsblattbezirk z ON b.land=z.land AND b.bezirk=z.bezirk ".UnqKatAmt("b","z") 478 ."LEFT JOIN ax_blattart_buchungsblatt bb ON b.blattart = bb.wert " 479 ."WHERE sh.gml_id= $1 AND sh.endet IS NULL AND sd.endet IS NULL AND b.endet IS NULL AND z.endet IS NULL " 480 ."ORDER BY sd.laufendenummer;"; 481 $v=array($gml_h); // gml_id "herrschende" B-Stelle 482 $resan=pg_prepare("", $sql); 483 $resan=pg_execute("", $v); 484 if (!$resan) { 485 echo "\n<p class='err'>Fehler bei 'dienende Buchungsstelle'.</p>"; 486 if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".htmlentities(str_replace("$1", "'".$gml_bs."'", $sql), ENT_QUOTES, "UTF-8")."</p>";} 487 } 488 $zeianz=pg_num_rows($resan); // Zeilen-Anzahl = Returnwert 489 //if ($dbg > 0) {echo "\n<p class='dbg'>Auf Ebene ".$ebene.": Anzahl diennende Buchungs-Stellen = ".$zeianz.".</p>";} 490 $und = false; // mehrfaches "Recht an" auf gleicher Ebene 491 while($row= pg_fetch_assoc($resan)) { 492 $gml_bsan=$row["gml_id"]; // id der dien. BS 493 $blatt=ltrim($row["blatt"], "0"); 494 495 // als Global-Var zur Sub-Function: 496 $bartkey=$row["buchungsart"]; 497 $bart=$row["bart"]; // Buchungsart, entschlÃŒsselt 498 $bartstory=htmlentities($row["dokumentation"], ENT_QUOTES, "UTF-8"); 499 if ($row["zaehler"] == "") {$anteil = "";} 500 else {$anteil = $row["zaehler"]."/".$row["nenner"];} 501 502 // Zeile ausgeben Buchungsstelle dienend 503 bnw_bszeile_d($row["bezirk"], $row["beznam"], $blatt, $row["blattart"], $row["blattartv"], $row["lfd"], $row["gbgml"], $gml_bsan, $ebene, $und); 504 $und = true; 505 if ($row["nrap"] != "") { // Nr im Auft.Plan 506 echo "\n<tr>\n\t<td colspan=3></td><td class='nrap' colspan=4>Nummer <span class='wichtig'>".$row["nrap"]."</span> im Aufteilungsplan.</td><td></td>\n</tr>"; 507 } 508 if ($row["sond"] != "") { // Sondereigentumsbeschreibung 509 echo "\n<tr>\n\t<td></td><td class='sond' colspan=6 title='Sondereigentums-Beschreibung'>Verbunden mit dem Sondereigentum an: ".$row["sond"]."</td><td></td>\n</tr>"; 510 } 511 512 // Rekursiver Aufruf der gleichen Function, weitere Ebene dienend? 513 $tiefer = bnw_bsdaten($gml_bsan, ($ebene + 1)); 514 If ($tiefer == 0) { // Wenn nicht, dann kann es FlurstÃŒcke dazu geben 515 $fscnt= bnw_fsdaten($gml_bsan, false); // FlurstÃŒcksdaten 516 } 517 } 518 pg_free_result($resan); 519 return $zeianz; 520 } 521 522 function bnw_fsdaten($gml_bs, $mit_buchung_link) { 523 /* Bestandsnachweis - FlurstÃŒcksdaten 524 Die Tabellenzeilen mit den FlurstÃŒcksdaten zu EINER Buchungsstelle im Bestandsnachweis ausgeben. 525 Die Funktion wird entweder aufgerufen fÃŒr die Buchungen direkt auf dem GB (Normalfall) 526 oder bei Erbbaurecht fÃŒr die mit "an" verknÃŒpften Buchungsstellen der untersten Ebene (dienende Buchung). 527 Der Tabellenkopf wird im aufrufenden Programm ausgegeben. 528 Return: Anzahl der ausgegebenen FlurstÃŒcke */ 529 global $dbg, $gkz, $showkey, $filtkreis, $filtgem, $trclass, $katAmtMix, $lfdnr, $altlfdnr, $bartkey, $bart, $bartstory, $anteil; 530 531 $sql="SELECT g.gemarkungsnummer, g.bezeichnung, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche " 532 ."FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer ".UnqKatAmt("f","g") 533 ."WHERE f.endet IS NULL AND g.endet IS NULL AND f.istgebucht = $1 "; 534 if ($filtgem === '') { // ungefiltert 535 $v=array($gml_bs); 536 } else { 537 $sql.="AND f.gemeindezugehoerigkeit_kreis = $2 AND f.gemeindezugehoerigkeit_gemeinde = $3 "; // ZustÀndiges Gebiet 538 $v=array($gml_bs, $filtkreis, $filtgem); 539 } 540 $sql.="ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;"; 541 $resf = pg_prepare("", $sql); 542 $resf = pg_execute("", $v); 543 if (!$resf) {echo "\n<p class='err'>Fehler bei Flurstück</p>";} 544 $zeianz=pg_num_rows($resf); 545 while($rowf = pg_fetch_assoc($resf)) { 546 $fskenn=$rowf["zaehler"]; 547 if ($rowf["nenner"] != "") { // Bruch 548 $fskenn.="/".$rowf["nenner"]; 549 } 550 $flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m²"; 551 552 echo "\n<tr class='".$trclass."'>"; // eine Zeile je Flurstueck 553 554 // Sp. 1-3 der Tab. Daten aus Buchungsstelle, nicht aus FS 555 if($lfdnr === $altlfdnr) { // gleiches GrundstÃŒck, leer lassen 556 echo "\n\t<td> </td>" 557 ."\n\t<td> </td>" 558 ."\n\t<td> </td>"; 559 } else { // Sprungmarke, BVNR 560 $bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT); 561 echo "\n\t<td id='bvnr".$bvnr."'>"; // Sprungmarke 562 echo "<span class='wichtig'>".$bvnr."</span>" 563 ."\n\t</td>"; 564 echo "\n\t<td title ='".$bartstory."'>"; // Buchungsart 565 if ($showkey) {echo "<span class='key'>".$bartkey."</span> ";} 566 echo $bart; 567 echo "</td>" 568 ."\n\t<td> </td>"; // Anteil 569 $altlfdnr=$lfdnr; 570 } 571 572 // Sp. 4-7 aus FlurstÃŒck 573 echo "\n\t<td>"; 574 if ($showkey) {echo "<span class='key'>".$rowf["gemarkungsnummer"]."</span> ";} 575 echo $rowf["bezeichnung"]."</td>" 576 ."\n\t<td>".$rowf["flurnummer"]."</td>\n\t<td class='fsnr'><span class='wichtig'>".$fskenn."</span></td>" 577 ."\n\t<td class='fla'>".$flae."</td>"; 578 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; 579 580 // Buchung BVNR 581 If ($mit_buchung_link == true) { // nur bei GrundstÃŒck 582 echo "\n\t\t\t<a href='alkisgsnw.php?gkz=".$gkz."&gmlid=".$gml_bs; 583 if ($showkey) {echo "&showkey=j";} 584 echo "' title='Grundstücksnachweis'>Buchung <img src='ico/Grundstueck_Link.png' width='16' height='16' alt=''></a> "; 585 $mit_buchung_link = false; // nur in erster Zeile 586 } 587 // Flurstk. 588 echo "\n\t\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n"; 589 if ($showkey) {echo "&showkey=j";} 590 echo "' title='Flurstücksnachweis'>Flurstück " 591 ."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>" 592 ."\n\t\t</p>\n\t</td>\n</tr>"; 593 } 594 pg_free_result($resf); 595 return $zeianz; 596 } 597 598 function eigentuemer($gmlid, $mitadresse, $lnkclass) { 599 // Tabelle mit Eigentuemerdaten zu einem Grundbuchblatt ausgeben 600 // Sp.1="EigentÃŒmer" Sp.2=NamNr, Sp.3=Name/Adresse, Sp.4=Link 601 // Parameter: 602 // $gmlid = ID GB-Blattes 603 // $mitadresse = Option (true/false) ob die Adresszeile ausgegeben werden soll 604 // Return = Anzahl Namensnummern 605 606 // Schleife 1: N a m e n s n u m m e r 607 // Beziehung: ax_namensnummer >istBestandteilVon> ax_buchungsblatt 406 function eigentuemer($gmlid, $mitadresse, $jsfenster) { 407 /* Tabelle mit EigentÃŒmerdaten zu einem Grundbuchblatt ausgeben 408 Sp.1="EigentÃŒmer" Sp.2=NamNr, Sp.3=Name/Adresse, Sp.4=Link 409 Parameter: 410 $gmlid: ID GB-Blatt 411 $mitadresse: Option (t/f) ob die Adresszeile ausgegeben werden soll 412 $jsfenster: Beim Link mit Javascript ein neues Fenster öffnen 413 Return = Anzahl Namensnummern */ 608 414 global $dbg, $gkz, $showkey; 609 610 if ($lnkclass == "") { 415 if ($jsfenster) { // beim Link aus iFrame ausbrechen 416 $lnkvor = "javascript:imFenster(\""; 417 $lnknach = "\")"; 418 } else { 611 419 $lnkvor = ""; 612 420 $lnknach = ""; 613 } else { // Link ÃŒber Java-Class "imFenster" aus alkisinlayausk.php 614 $lnkvor = "javascript:".$lnkclass."(\""; 615 $lnknach = "\")"; 616 } 617 618 $sqln="SELECT n.gml_id, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, n.artderrechtsgemeinschaft AS adr, n.beschriebderrechtsgemeinschaft as beschr, n.eigentuemerart, n.anlass, n.benennt, wn.beschreibung AS adrv, we.beschreibung AS eiartv " 421 } 422 423 // N a m e n s n u m m e r 424 // ax_namensnummer >istBestandteilVon> ax_buchungsblatt 425 $sqln="SELECT n.gml_id, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, n.artderrechtsgemeinschaft AS adr, n.beschriebderrechtsgemeinschaft as beschr, n.eigentuemerart, n.anlass, n.benennt, " 426 ."wn.beschreibung AS adrv, we.beschreibung AS eiartv, " 427 ."p.gml_id AS gmlpers, p.nachnameoderfirma, p.vorname, p.geburtsname, to_char(cast(p.geburtsdatum AS date),'DD.MM.YYYY') AS geburtsdatum, p.namensbestandteil, p.akademischergrad " 619 428 ."FROM ax_namensnummer n " 620 429 ."LEFT JOIN ax_artderrechtsgemeinschaft_namensnummer wn ON n.artderrechtsgemeinschaft = wn.wert " 621 ."LEFT JOIN ax_eigentuemerart_namensnummer we ON n.eigentuemerart = we.wert " 622 ."WHERE n.istbestandteilvon= $1 AND n.endet IS NULL ORDER BY n.laufendenummernachdin1421;"; 623 // VerknÃŒpfungsfeld "benennt" ist leer bei "Beschrieb der Rechtsgemeinschaft". 430 ."LEFT JOIN ax_eigentuemerart_namensnummer we ON n.eigentuemerart = we.wert " 431 ."LEFT JOIN ax_person p ON p.gml_id = n.benennt " 432 ."WHERE n.istbestandteilvon = $1 AND n.endet IS NULL AND p.endet IS NULL " 433 ."ORDER BY n.laufendenummernachdin1421;"; 434 // "benennt" ist leer bei "Beschrieb der Rechtsgemeinschaft". 624 435 625 436 $v = array($gmlid); // GB-Blatt 626 437 $resn = pg_prepare("", $sqln); 627 438 $resn = pg_execute("", $v); 628 629 439 if (!$resn) { 630 echo "\n<p class='err'>Fehler bei Eigentümer</p>"; // kein Fehler bei Blattarten > 1000631 //if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".str_replace("$1", "'".$gmlid."'", $sqln )."</p>";}440 echo "\n<p class='err'>Fehler bei Eigentümer</p>"; 441 if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".str_replace("$1", "'".$gmlid."'", $sqln )."</p>";} 632 442 } 633 443 … … 637 447 $namnum=kurz_namnr($rown["lfd"]); 638 448 $rechtsg=$rown["adr"]; 449 $beschr=htmlentities($rown["beschr"], ENT_QUOTES, "UTF-8"); 450 $adrv=htmlentities($rown["adrv"], ENT_QUOTES, "UTF-8"); 639 451 $eiartkey=$rown["eigentuemerart"]; // Key 640 452 $eiart=$rown["eiartv"]; // Value 641 // if ($dbg > 1) {echo "\n<p class='dbg'>Eigentü:merart = '".$eiartkey."' = '".$eiart."'</p>";} 453 $anlass=$rown["anlass"]; // ??? 454 $gmlpers=$rown["gmlpers"]; // leer bei RechtsverhÀltnis 455 $akadem=$rown["akademischergrad"]; 456 $nachnam=$rown["nachnameoderfirma"]; 457 $vorname=$rown["vorname"]; 458 $nbest=$rown["namensbestandteil"]; 459 $gebdat=$rown["geburtsdatum"]; 460 $gebnam=$rown["geburtsname"]; 461 $zaehler=str_replace(".", ",", $rown["zaehler"]); // Dezimal-KOMMA wenn dem Notar der Bruch nicht reicht 462 $nenner=str_replace(".", ",", $rown["nenner"]); 642 463 643 464 echo "\n\t<tr>"; 644 if($n === 0) { // erste EigentÃŒmer-Zeile zu einer Buchung 645 echo "\n\t\t<td class='ll'><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Eigentümer:</td>"; // 1 646 } else { // Folgezeile 647 echo "\n\t\t<td class='ll'> </td>"; // 1 648 } 649 650 if ($rechtsg != "" ) { // Erbengemeinschaft usw. 651 echo "\n\t\t<td colspan='2'>"; // 2-3 652 if ($rechtsg == 9999) { // sonstiges 653 echo "\n\t\t\t<p class='zus' title='Beschrieb der Rechtsgemeinschaft'>".htmlentities($rown["beschr"], ENT_QUOTES, "UTF-8")."</p>"; 654 } else { 655 echo "\n\t\t\t<p class='zus' title='Art der Rechtsgemeinschaft'>".htmlentities($rown["adrv"], ENT_QUOTES, "UTF-8")."</p>"; 465 if($n === 0) { // 1. Zeile zum GB 466 echo "\n\t\t<td class='ll'><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Eigentümer:</td>"; // 1 467 } else { // Folgezeile 468 echo "\n\t\t<td class='ll'> </td>"; 469 } 470 if ($rechtsg != "" ) { // Erbengemeinschaft usw. 471 echo "\n\t\t<td colspan='2'>"; 472 if ($rechtsg == 9999) { // sonstiges 473 echo "\n\t\t\t<p class='zus' title='Beschrieb der Rechtsgemeinschaft'>".$beschr."</p>"; 474 } else { 475 echo "\n\t\t\t<p class='zus' title='Art der Rechtsgemeinschaft'>".$adrv."</p>"; 476 } 477 } else { // Namensnummer 478 echo "\n\t\t<td class='nanu' title='Namens-Nummer'>\n\t\t\t<p>".$namnum." </p>\n\t\t</td>" 479 . "\n\t\t<td>"; 480 } 481 if ($anlass > 0 ) {echo "<p>Anlass=".$anlass."</p>";} 482 // Andere Namensnummern? Relation: ax_namensnummer >bestehtAusRechtsverhaeltnissenZu> ax_namensnummer 483 // Die Relation 'Namensnummer' besteht aus RechtsverhÀltnissen zu 'Namensnummer' sagt aus, dass mehrere Namensnummern zu einer Rechtsgemeinschaft gehören können. 484 // Die Rechtsgemeinschaft selbst steht unter einer eigenen AX_Namensnummer, die zu allen Namensnummern der Rechtsgemeinschaft eine Relation besitzt. 485 486 $diePerson=""; 487 if ($akadem != "") {$diePerson=$akadem." ";} 488 $diePerson.=$nachnam; 489 if ($vorname != "") {$diePerson.=", ".$vorname;} 490 if ($nbest != "") {$diePerson.=". ".$nbest;} 491 if ($gebdat != "") {$diePerson.=", geb. ".$gebdat;} 492 if ($gebnam != "") {$diePerson.=", geb. ".$gebnam;} 493 $diePerson=htmlentities($diePerson, ENT_QUOTES, "UTF-8"); 494 495 if ($eiartkey == "") {$eiart="Eigentümer" ;} // Default 496 echo "\n\t\t\t<p class='geig' title='Eigentümerart: ".$eiart."'>".$diePerson."</p>\n\t\t</td>" 497 ."\n\t\t<td>\n\t\t\t<p class='nwlink noprint'>".DsKy($eiartkey, 'Eigentümerart-*') 498 ."\n\t\t\t\t<a href='".$lnkvor."alkisnamstruk.php?gkz=".$gkz."&gmlid=".$gmlpers.LnkStf() 499 .$lnknach."' title='vollständiger Name und Adresse eines Eigentümers'>".$eiart 500 ." \n\t\t\t\t\t<img src='ico/Eigentuemer.png' width='16' height='16' alt=''>\n\t\t\t\t</a>\n\t\t\t</p>" 501 ."\n\t\t</td>\n\t</tr>"; 502 503 if ($mitadresse) { // optional 504 // A d r e s s e zur Person 505 $sqla ="SELECT a.gml_id, a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer, a.bestimmungsland " 506 ."FROM ax_anschrift a JOIN ax_person p ON a.gml_id=ANY(p.hat) " 507 ."WHERE p.gml_id= $1 AND a.endet IS NULL AND p.endet IS NULL " 508 ."ORDER BY a.beginnt DESC LIMIT 2;"; 509 $v = array($gmlpers); 510 $resa = pg_prepare("", $sqla); 511 $resa = pg_execute("", $v); 512 if (!$resa) { 513 echo "\n\t<p class='err'>Fehler bei Adressen</p>"; 514 if ($dbg > 2) {echo "\n<p class='err'>SQL=<br>".str_replace("$1", "'".$gmlpers."'", $sqla)."</p>";} 515 } 516 $j=0; 517 while($rowa = pg_fetch_assoc($resa)) { 518 $j++; 519 if ($j === 1) { // erste ("jÃŒngste") Adresse anzeigen 520 $gmla=$rowa["gml_id"]; 521 $plz=$rowa["plz"]; // integer 522 if($plz === 0) { 523 $plz=""; 524 } else { 525 $plz=str_pad($plz, 5, "0", STR_PAD_LEFT); 526 } 527 $ort=htmlentities($rowa["ort_post"], ENT_QUOTES, "UTF-8"); 528 $str=htmlentities($rowa["strasse"], ENT_QUOTES, "UTF-8"); 529 $hsnr=$rowa["hausnummer"]; 530 $land=htmlentities($rowa["bestimmungsland"], ENT_QUOTES, "UTF-8"); 531 532 echo "\n\t<tr>\n\t\t<td class='ll'> </td>\n\t\t<td> </td>" 533 ."\n\t\t<td><p class='gadr'>"; 534 if ($str.$hsnr != "") {echo $str." ".$hsnr."<br>";} 535 if ($plz.$ort != "") {echo $plz." ".$ort;} 536 if ($land != "" and $land != "DEUTSCHLAND") {echo ", ".$land;} 537 echo "</p></td>" 538 ."\n\t\t<td> </td>\n\t</tr>"; 539 } else { // manchmal mehrere Angaben 540 echo "\n\t<tr>\n\t\t<td class='ll'> </td>\n\t\t<td> </td>" 541 ."\n\t\t<td><p class='dbg' title='Siehe Auskunft zur Person'>weitere Adresse</p></td>" 542 ."\n\t\t<td> </td>\n\t</tr>"; 656 543 } 657 } else { // Namensnummer 658 echo "\n\t\t<td class='nanu' title='Namens-Nummer'>\n\t\t\t<p>".$namnum." </p>\n\t\t</td>" // 2 659 . "\n\t\t<td>"; // 3 660 661 } 662 //if ($rown["anlass"] > 0 ) {echo "<p>Anlass=".$rown["anlass"]."</p>";} 663 664 // Andere Namensnummern? Relation: ax_namensnummer >bestehtAusRechtsverhaeltnissenZu> ax_namensnummer 665 // Die Relation 'Namensnummer' besteht aus RechtsverhÀltnissen zu 'Namensnummer' sagt aus, dass mehrere Namensnummern zu einer Rechtsgemeinschaft gehören können. 666 // Die Rechtsgemeinschaft selbst steht unter einer eigenen AX_Namensnummer, die zu allen Namensnummern der Rechtsgemeinschaft eine Relation besitzt. 667 668 // Schleife 2: P e r s o n 669 // Beziehung: ax_person <benennt< ax_namensnummer 670 $sqlp="SELECT nachnameoderfirma, vorname, geburtsname, to_char(cast(geburtsdatum AS date),'DD.MM.YYYY') AS geburtsdatum, namensbestandteil, akademischergrad " 671 ."FROM ax_person WHERE gml_id= $1 AND endet IS NULL;"; 672 $gmlpers=$rown["benennt"]; // leer bei RechtsverhÀltnis 673 $v = array($gmlpers); // gml_id von ax_person 674 $resp = pg_prepare("", $sqlp); 675 $resp = pg_execute("", $v); 676 if (!$resp) { 677 echo "\n\t<p class='err'>Fehler bei Person</p>"; 678 if ($dbg > 2) {echo "\n<p class='err'>SQL=<br>".str_replace("$1", "'".$gmlpers."'", $sqlp)."</p>";} 679 } 680 681 $i=0; // cnt Person 682 while($rowp = pg_fetch_assoc($resp)) { // Schleife weglassen: "benennt" ist KEIN Array! 683 $diePerson=""; //++ Anrede? 684 if ($rowp["akademischergrad"] != "") {$diePerson=$rowp["akademischergrad"]." ";} 685 $diePerson.=$rowp["nachnameoderfirma"]; 686 if ($rowp["vorname"] != "") {$diePerson.=", ".$rowp["vorname"];} 687 if ($rowp["namensbestandteil"] != "") {$diePerson.=". ".$rowp["namensbestandteil"];} 688 if ($rowp["geburtsdatum"] != "") {$diePerson.=", geb. ".$rowp["geburtsdatum"];} 689 if ($rowp["geburtsname"] != "") {$diePerson.=", geb. ".$rowp["geburtsname"];} 690 $diePerson=htmlentities($diePerson, ENT_QUOTES, "UTF-8"); // Umlaute 691 692 echo "\n\t\t\t<p class='geig' title='Eigentümerart: ".$eiart."'>".$diePerson."</p>\n\t\t</td>"; // 3 - Person in Sp.3 hinter NamNum (Sp.2) 693 echo "\n\t\t<td>\n\t\t\t<p class='nwlink noprint'>"; // 4 694 if ($showkey AND $eiartkey != '') {echo "<span class='key' title='Eigentümerart'>(".$eiartkey.")</span> ";} 695 echo "\n\t\t\t\t<a href='".$lnkvor."alkisnamstruk.php?gkz=".$gkz."&gmlid=".$gmlpers; 696 if ($showkey) {echo "&showkey=j";} 697 if ($eiartkey == "") {$eiart="Eigentümer" ;} // Default. Ersatz-Text, wenn nicht gefÃŒllt 698 echo $lnknach."' title='vollständiger Name und Adresse eines Eigentümers'>".$eiart 699 ." \n\t\t\t\t\t<img src='ico/Eigentuemer.png' width='16' height='16' alt=''>\n\t\t\t\t</a>\n\t\t\t</p>" 700 ."\n\t\t</td>" // 4 701 ."\n\t</tr>"; 702 703 if ($mitadresse) { 704 // Schleife 3: optional A d r e s s e zur Person 705 $sqla ="SELECT a.gml_id, a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer, a.bestimmungsland " 706 ."FROM ax_anschrift a JOIN ax_person p ON a.gml_id=ANY(p.hat) WHERE p.gml_id= $1 AND a.endet IS NULL AND p.endet IS NULL ORDER BY a.beginnt DESC LIMIT 2;"; 707 $v = array($gmlpers); 708 $resa = pg_prepare("", $sqla); 709 $resa = pg_execute("", $v); 710 if (!$resa) { 711 echo "\n\t<p class='err'>Fehler bei Adressen</p>"; 712 if ($dbg > 2) {echo "\n<p class='err'>SQL=<br>".str_replace("$1", "'".$gmlpers."'", $sqla)."</p>";} 713 } 714 $j=0; 715 while($rowa = pg_fetch_assoc($resa)) { 716 $j++; 717 if ($j === 1) { // erste ("jÃŒngste") Adresse anzeigen 718 $gmla=$rowa["gml_id"]; 719 $plz=$rowa["plz"]; // integer 720 if($plz === 0) { 721 $plz=""; 722 } else { 723 $plz=str_pad($plz, 5, "0", STR_PAD_LEFT); 724 } 725 $ort=htmlentities($rowa["ort_post"], ENT_QUOTES, "UTF-8"); 726 $str=htmlentities($rowa["strasse"], ENT_QUOTES, "UTF-8"); 727 $hsnr=$rowa["hausnummer"]; 728 $land=htmlentities($rowa["bestimmungsland"], ENT_QUOTES, "UTF-8"); 729 730 echo "\n\t<tr>" 731 ."\n\t\t<td class='ll'> </td>" // 1 732 ."\n\t\t<td> </td>" // 2 733 ."\n\t\t<td><p class='gadr'>"; // 3 734 if ($str.$hsnr != "") {echo $str." ".$hsnr."<br>";} 735 if ($plz.$ort != "") {echo $plz." ".$ort;} 736 if ($land != "" and $land != "DEUTSCHLAND") {echo ", ".$land;} 737 echo "</p></td>" // 3 738 ."\n\t\t<td> </td>\n\t</tr>"; // 4 739 } else { // manchmal doppelte Angaben 740 echo "\n\t<tr>" 741 ."\n\t\t<td class='ll'> </td>" // 1 742 ."\n\t\t<td> </td>" // 2 743 ."\n\t\t<td><p class='dbg' title='Siehe Auskunft zur Person'>weitere Adresse</p></td>" // 3 744 ."\n\t\t<td> </td>\n\t</tr>"; // 4 745 } 746 } // Ende Loop Adresse zur Person 747 pg_free_result($resa); 748 } 749 // 'keine Adresse' kann vorkommen, z.B. "Deutsche Telekom AG" 750 $i++; // cnt Person 751 752 $zaehler=$rown["zaehler"]; 753 if ($zaehler != "") { // Anteil als eigene Tab-Zeile 754 $zaehler=str_replace(".", ",", $zaehler); // Dezimal-KOMMA wenn dem Notar der Bruch nicht reicht 755 $nenner=str_replace(".", ",", $rown["nenner"]); 756 $comnt="Anteil der Berechtigten in Bruchteilen (Par. 47 GBO) an einem gemeinschaftlichen Eigentum (Grundstück oder Recht)."; 757 echo "\n\t<tr>" 758 ."\n\t\t<td class='ll'> </td>" // 1 759 ."\n\t\t<td> </td>" // 2 760 ."\n\t\t<td><p class='avh' title='".$comnt."'>".$zaehler."/".$nenner." Anteil</p></td>" // 3 761 ."\n\t\t<td> </td>\n\t</tr>"; // 4 762 } 763 } // End Loop Person 764 pg_free_result($resp); 765 766 if ($i === 0) { // KEINE Person. benennt ist leer. Das kommt vor hinter der Zeile "Erbengemeinschaft" und ist dann KEIN Fehler 544 } 545 pg_free_result($resa); 546 } // 'keine Adresse' kann vorkommen, z.B. "Deutsche Telekom AG" 547 548 if ($zaehler != "") { // Anteil als eigene Tab-Zeile 549 $comnt="Anteil der Berechtigten in Bruchteilen (Par. 47 GBO) an einem gemeinschaftlichen Eigentum (Grundstück oder Recht)."; 550 echo "\n\t<tr>\n\t\t<td class='ll'> </td>\n\t\t<td> </td>" 551 ."\n\t\t<td><p class='avh' title='".$comnt."'>".$zaehler."/".$nenner." Anteil</p></td>" 552 ."\n\t\t<td> </td>\n\t</tr>"; 553 } 554 if ($gmlpers == "") { // KEINE Person. benennt ist leer. Das kommt vor hinter der Zeile "Erbengemeinschaft" und ist dann KEIN Fehler 767 555 if ($dbg > 1) {echo "\n\t\t\t<p class='dbg'>Rechtsgemeinschaft = '".$rechtsg."'</p>";} 768 556 if ($rechtsg !== '9999') { … … 771 559 echo "</td>\n\t\t<td> </td>\n\t</tr>"; 772 560 } 773 $n++; // cnt NamNum 774 } // End Loop NamNum 775 561 $n++; 562 } 776 563 pg_free_result($resn); 777 564 return $n; 778 565 } 779 566 780 function werteliste ($bez ,$sqlin) {781 // Eine oder mehrere EntschlÃŒsselungen in eine Zeile ausgeben.782 // Dient dazu, SchlÃŒssel-ARRAYs auflösen ohne die Zeile im JOIN mehrfach aufzulisten783 // Anwendung: FS-Nachweis BodenschÀtzung784 global $dbg;785 786 if ($bez === 'e') {$tabelle = 'ax_entstehungsartoderklimastufewasserverhaeltnisse_bodensc';}787 elseif ($bez === 's') {$tabelle = 'ax_sonstigeangaben_bodenschaetzung';}788 789 $sql="SELECT wert, beschreibung FROM ".$tabelle." WHERE wert IN (".$sqlin.") ORDER BY wert LIMIT $1 ;";790 $v = array('9');791 $res = pg_prepare("", $sql);792 $res = pg_execute("", $v);793 if (!$res) {794 echo "\n<p class='err'>Fehler bei Werteliste.</p>";795 if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."</p>";}796 return;797 }798 $i=0;799 while($row = pg_fetch_assoc($res)) {800 echo " ".$row["beschreibung"];801 $i++;802 }803 pg_free_result($res);804 if ($i === 0) {805 echo "(kein Treffer)";806 if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."</p>";}807 }808 return;809 }810 811 567 function fortfuehrungen($entsteh, $dbzeart, $dbzename) { 812 568 // Tabelle im Kopf von FlurstÃŒck und FS-Historie. 2 Z./Sp. Entstehung/FortfÃŒhrung 813 // Parameter: Die DB-Spalten "zeitpunktderentstehung" , "zeigtaufexternes_art" und "zeigtaufexternes_name"569 // Parameter: Die DB-Spalten "zeitpunktderentstehung"[], "zeigtaufexternes_art"[] und "zeigtaufexternes_name"[] 814 570 global $dbg, $showkey; 815 571 816 // if ($dbg > 2) {echo "<p class='dbg'>function fortfuehrungen<br>1: ".$dbzeart."<br>2: ".$dbzename."</p>";}817 818 572 echo "\n\t<table class='fsd'>" // FS-Daten 2 Spalten 819 ."\n\t\t<tr>\n\t\t\t<td>Entstehung</td>" 820 ."\n\t\t\t<td title='Zeitpunkt der Enstehung'>".$entsteh."</td>\n\t\t</tr>"; 821 echo "\n\t<tr>" 822 ."\n\t\t\t<td>"; 573 ."\n\t\t<tr>\n\t\t\t<td>Entstehung</td>" 574 ."\n\t\t\t<td title='Zeitpunkt der Enstehung'>".$entsteh."</td>\n\t\t</tr>"; 575 echo "\n\t<tr>\n\t\t\t<td>"; 823 576 $arrart=explode(",", trim($dbzeart, "{}")); 824 foreach($arrart AS $artval) { // Zeile fÃŒr jedes Element577 foreach($arrart AS $artval) { // Eine Zeile fÃŒr jedes Element von "zeigtaufexternes_art" 825 578 $artval=trim($artval, '"'); 826 // ibR: {"Entstehung des FlurstÃŒcks/5200","Letzte FortfÃŒhrung des FlurstÃŒcks/5300",urn:adv:fachdatenverbindung:AA_Antrag}827 // AED: {http://geoportal.kreis-herford.de/alkis/alkis.html#5200,http://geoportal.kreis-herford.de/alkis/alkis.html#5300,urn:adv:fachdatenverbindung:AA_Antrag}828 829 579 $artpos=strpos($artval, '#'); 830 580 if ($artpos > 0) { // AED 831 581 $artkey=substr($artval, $artpos + 1); 832 582 switch ($artkey) { // keine SchlÃŒsseltabelle? 833 case '5100': $arttxt="Grundstückshinweis (aus ALB-Historie)"; break; 834 case '5200': $arttxt="Entstehung des Flurstücks"; break; 835 case '5300': $arttxt="Letzte Fortführung des Flurstücks"; break; 836 default: $arttxt=$artval; 837 } 838 if ($showkey) {echo "<span class='key'><a target='_blank' href='".$artval."'>".$artkey."</a></span> ";} 583 case '5100': 584 $arttxt="Grundstückshinweis (aus ALB-Historie)"; 585 $artinfo=""; 586 break; 587 case '5200': 588 $arttxt="Entstehung des Flurstücks"; 589 $artinfo="'Entstehung des FlurstÃŒcks' enthÀlt das Jahr der Entstehung, die lfd. Nr. der FortfÃŒhrung und den SchlÃŒssel der FortfÃŒhrungsart zur manuellen Recherche in den Grundbuchakten."; 590 break; 591 case '5300': 592 $arttxt="Letzte Fortführung des Flurstücks"; 593 $artinfo="'Letzte FortfÃŒhrung' enthÀlt das Jahr der letzten FortfÃŒhrung, die lfd. Nr. der FortfÃŒhrung und den SchlÃŒssel der FortfÃŒhrungsart zur manuellen Recherche in den Grundbuchakten."; 594 break; 595 default: 596 $arttxt=$artval; 597 $artinfo=""; 598 } 599 if ($showkey) {echo "<span class='key'><a target='_blank' title='".htmlentities($artinfo, ENT_QUOTES, "UTF-8")."' href='".$artval."'>(".$artkey.")</a></span> ";} 839 600 echo $arttxt."<br>"; 840 601 } else { … … 843 604 $artkey=substr($artval, $artpos + 1); 844 605 $arttxt=substr($artval, 0, $artpos); 845 if ($showkey) {echo "<span class='key'>".$artkey."</span> ";} 846 echo $arttxt."<br>"; 847 } 848 } 849 } 850 echo "</td>" 851 ."\n\t\t\t<td title='Jahrgang / Fortführungsnummer - Fortführungsart'>"; 852 $arrname=explode(",", trim($dbzename, "{}")); 853 foreach($arrname AS $val) { 854 echo trim($val, '"')."<br>"; 855 } 856 echo "</td>" 857 ."\n\t\t</tr>" 858 ."\n\t</table>"; 859 } 860 861 function fskenn_dbformat ($fskennz) { 862 // Erzeugt, wenn notwendig, aus dem Bindetrich-getrennten FlurstÃŒckskennzeichen "llgggg-fff-nnnn/zz.nn" oder "gggg-ff-nnn/zz" 863 // das ALKIS-DB-interne Format des FlurstÃŒckskennzeichens. 606 echo DsKy($artkey, 'Fortführungsart').$arttxt."<br>"; 607 } 608 } 609 } 610 echo "</td>\n\t\t\t<td title='Jahrgang / Fortführungsnummer - Fortführungsart'>"; 611 $arrname=explode(",", trim($dbzename, "{}")); // Eine Zeile fÃŒr jedes Element von "zeigtaufexternes_name" 612 foreach($arrname AS $val) {echo trim($val, '"')."<br>";} 613 echo "</td>\n\t\t</tr>\n\t</table>"; 614 } 615 616 function fskenn_dbformat($fskennz) { 617 // Erzeugt aus dem Bindetrich-getrennten FlurstÃŒckskennzeichen "llgggg-fff-nnnn/zz.nn" oder "gggg-ff-nnn/zz" 618 // das ALKIS-DB-interne Format des FlurstÃŒckskennzeichens. 864 619 global $defland; 865 620 $arr=explode("-", $fskennz, 4); // zerlegen … … 875 630 } 876 631 $zflur=str_pad($arr[1], 3 , "0", STR_PAD_LEFT); // Flur-Nr 877 $zfsnr=trim($arr[2]); // FlurstÃŒck e-Nr632 $zfsnr=trim($arr[2]); // FlurstÃŒcks-Nr 878 633 $zn=explode("/", $zfsnr, 2); // Bruch? 879 634 $zzaehler=str_pad(trim($zn[0]), 5 , "0", STR_PAD_LEFT); … … 894 649 return $fskzdb; 895 650 } 896 897 651 ?> -
trunk/info/info/alkisn/alkisfshist.php
r425 r427 1 1 <?php 2 /* Modul: alkisfshist.php 3 4 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 5 Flurstuecks-Historie fuer ein Flurstueckskennzeichen aus ALKIS PostNAS 2 /* alkisfshist.php 3 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 7 FlurstÃŒcks-Historie fÃŒr ein FlurstÃŒckskennzeichen aus ALKIS PostNAS 8 6 9 Version: 7 10 2016-02-24 Version fÃŒr norGIS-ALKIS-Import … … 11 14 2020-12-15 Input-Validation und Strict Comparisation (===) 12 15 2021-12-09 Neuer Parameter $PrntBtn (Drucken-SchaltflÀche) 16 2022-01-13 Neue Functions LnkStf(), DsKy() 13 17 */ 14 18 15 19 function fzerleg($fs) { 16 /* Flurst ueckskennzeichen (20) zerlegen als lesbares Format (wie im Balken):20 /* FlurstÃŒckskennzeichen (20) zerlegen als lesbares Format (wie im Balken): 17 21 Dies FS-Kennz-Format wird auch als Eingabe in der Navigation akzeptiert 18 22 ....*....1....*....2 … … 37 41 $arr = explode(",",$stri); 38 42 foreach($arr AS $val){ 39 echo "Flurstück <a title=' zur Flurstück Historie' href='".selbstverlinkung()."?gkz=".$gkz."&fskennz=".$val; 40 if ($showkey) {echo "&showkey=j";} 41 echo "'>".fzerleg($val)."</a><br>"; 43 echo "Flurstück <a title=' zur Flurstück Historie' href='".selbstverlinkung()."?gkz=".$gkz."&fskennz=".$val.LnkStf()."'>".fzerleg($val)."</a><br>"; 42 44 } 43 45 } … … 90 92 $gmlv=$rowv["gml_id"]; 91 93 $vfsk=$rowv["flurstueckskennzeichen"]; 92 echo "Flurstück <a title='Historie des Vorgängerflurstücks' href='".selbstverlinkung()."?gkz=".$gkz."&fskennz=".$vfsk."&gmlid=".$gmlv; 93 if ($showkey) {echo "&showkey=j";} 94 echo "'>".fzerleg($vfsk)."</a><br>"; 94 echo "Flurstück <a title='Historie des Vorgängerflurstücks' href='".selbstverlinkung()."?gkz=".$gkz."&fskennz=".$vfsk."&gmlid=".$gmlv.LnkStf()."'>".fzerleg($vfsk)."</a><br>"; 95 95 $zv++; 96 96 } … … 102 102 103 103 // Start 104 105 104 ini_set("session.cookie_httponly", 1); 106 105 session_start(); … … 147 146 148 147 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 149 $dbg=$debug; // CONF in Arbeits-Variable 150 151 // Mit URL-Parameter "&nodebug=j" kann man die Entwicklungsumgebung (in Conf definiert) ausschalten. 152 // Wirkt temporÀr und wird nicht in Links weiter gereicht. 148 $dbg=$debug; 153 149 if ($nodebug === "j") {$dbg=0;} 154 150 … … 251 247 ."\n\t<table class='".$cls."' title='Flurstückskennzeichen'>\n\t<tr>" // innere Tabelle Kennzeichen 252 248 ."\n\t\t<td class='head'>Gemarkung</td>\n\t\t<td class='head'>Flur</td>\n\t\t<td class='head'>Flurst-Nr.</td>\n\t</tr>" 253 ."\n\t<tr>\n\t\t<td title='Gemarkung'>"; 254 if ($showkey) {echo "<span class='key'>".$gmkgnr."</span><br>";} 255 echo $gemkname." </td>" 249 ."\n\t<tr>\n\t\t<td title='Gemarkung'>".DsKy($gmkgnr, 'Gemarkungsnummer').$gemkname." </td>" 256 250 ."\n\t\t<td title='Flurnummer'>".$flurnummer."</td>" 257 251 ."\n\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>" … … 263 257 if ($ftyp === "a") { // Aktuell -> Historie 264 258 echo "\n<p class='nwlink noprint'>weitere Auskunft: " 265 ."<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid."&eig=n"; 266 if ($showkey) {echo "&showkey=j";} 267 echo "' title='Flurstücksnachweis'>Flurstück " 268 ."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>" 269 ."</a>"; 259 ."<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid.LnkStf()."&eig=n' title='Flurstücksnachweis'>Flurstück " 260 ."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>"; 270 261 } 271 262 echo "\n<hr>" … … 277 268 </tr>"; // Head 278 269 279 // Sp alte 1: F l u r s t ÃŒ ck270 // Sp.1: FlurstÃŒck 280 271 echo "\n<tr>\n\t<td>" 281 272 ."<img src='ico/".$ico."' width='16' height='16' alt=''> ".$wert … … 283 274 ."</td>"; 284 275 285 // Sp alte 2: V o r g À n g er276 // Sp.2: VorgÀnger 286 277 echo "\n\t<td>"; 287 278 switch ($ftyp) { // Diff. Hist./Akt. … … 298 289 echo"</td>"; 299 290 300 // Sp alte 3: N a c h f o l g er291 // Sp.3: Nachfolger 301 292 echo "\n\t<td>"; 302 293 vornach($nach); -
trunk/info/info/alkisn/alkisfsnw.php
r425 r427 1 1 <?php 2 /* Modul: alkisfsnw.php 3 4 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 5 FlurstÃŒcksnachweis fuer ein FlurstÃŒckskennzeichen aus ALKIS PostNAS 2 /* alkisfsnw.php 3 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 7 FlurstÃŒcksnachweis fÃŒr ein FlurstÃŒckskennzeichen aus ALKIS PostNAS 6 8 7 9 Version: 8 10 2016-02-24 Version fÃŒr norGIS-ALKIS-Import 9 ..... 10 2020-02-20 Authentifizierung ausgelagert in Function darf_ich() 11 2020-10-13 debug-infos raus 11 ... 12 12 2020-12-03 function selbstverlinkung() statt $_SERVER['PHP_SELF'] 13 13 2020-12-09 Verschn. mit "Bau-, Raum- oder Bodenordnungsrecht" korrigiert, Entschl. BodenschÀtzung korrigiert … … 15 15 2021-03-09 Link zum GebÀudenachweis auch mit "Bauwerke" betiteln 16 16 2021-12-09 Neue Parameter: $katAmtMix (Kataster-Amt-Mix), $PrntBtn (Drucken-SchaltflÀche) 17 2022-01-13 Functions in Fach-Modul verschoben, die nicht von mehreren verwendet werden. Neue Functions LnkStf(), DsKy() 17 18 18 19 ToDo: … … 23 24 - Bessere Differenzierung bei den Nutzungsarten (Tabelle dafÃŒr aufbauen) 24 25 */ 26 27 function werteliste($bez ,$sqlin) { 28 // Eine oder mehrere EntschlÃŒsselungen in eine Zeile ausgeben. 29 // Dient dazu, SchlÃŒssel-ARRAYs auflösen ohne die Zeile im JOIN mehrfach aufzulisten 30 // Anwendung: FS-Nachweis BodenschÀtzung 31 global $dbg; 32 33 if ($bez === 'e') {$tabelle = 'ax_entstehungsartoderklimastufewasserverhaeltnisse_bodensc';} 34 elseif ($bez === 's') {$tabelle = 'ax_sonstigeangaben_bodenschaetzung';} 35 36 $sql="SELECT wert, beschreibung FROM ".$tabelle." WHERE wert IN (".$sqlin.") ORDER BY wert LIMIT $1 ;"; 37 $v = array('9'); 38 $res = pg_prepare("", $sql); 39 $res = pg_execute("", $v); 40 if (!$res) { 41 echo "\n<p class='err'>Fehler bei Werteliste.</p>"; 42 if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."</p>";} 43 return; 44 } 45 $zeianz=pg_num_rows($res); 46 while($row = pg_fetch_assoc($res)) { 47 echo " ".$row["beschreibung"]; 48 } 49 pg_free_result($res); 50 if ($zeianz === 0) { 51 echo "(kein Treffer)"; 52 if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."</p>";} 53 } 54 return; 55 } 56 57 // Start 25 58 ini_set("session.cookie_httponly", 1); 26 59 session_start(); … … 71 104 <?php 72 105 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 73 $dbg=$debug; // CONF in Arbeits-Variable 74 75 // Mit URL-Parameter "&nodebug=j" kann man die Entwicklungsumgebung (in Conf definiert) ausschalten. Blendet z.B. "fiktives Blatt" aus. 76 // Wirkt temporÀr und wird nicht in Links weiter gereicht. 106 $dbg=$debug; 77 107 if ($nodebug === "j") {$dbg=0;} 78 108 … … 91 121 } else { 92 122 echo "\n<p class='err'>Fehler! Kein Treffer für Flurstückskennzeichen='".$fskennz."' (".$fskzdb.")</p>"; 93 echo "<p>Kennzeichen veraltet? <a href='./alkisfshist.php?gkz=".$gkz."&fskennz=".$fskennz. "'>Suche in der Flurstücks-Historie</a></p>";123 echo "<p>Kennzeichen veraltet? <a href='./alkisfshist.php?gkz=".$gkz."&fskennz=".$fskennz.LnkStf()."'>Suche in der Flurstücks-Historie</a></p>"; 94 124 echo "\n</body>\n</html>"; 95 125 return; … … 98 128 } 99 129 100 // F L U R S T U EC K m. Gebiet130 // F L U R S T à C K m. Gebiet 101 131 $sql ="SELECT f.zeigtaufexternes_art, f.zeigtaufexternes_name, f.flurnummer, f.zaehler, f.nenner, f.gemeindezugehoerigkeit_regierungsbezirk, f.gemeindezugehoerigkeit_kreis, f.gemeindezugehoerigkeit_gemeinde, f.amtlicheflaeche, st_area(f.wkb_geometry) AS fsgeomflae, 102 132 to_char(cast(f.zeitpunktderentstehung AS date),'DD.MM.YYYY') AS zeitpunktderentstehung, f.istgebucht, g.gemarkungsnummer, g.bezeichnung, r.bezeichnung AS rbez, k.bezeichnung AS kbez, m.bezeichnung AS mbez … … 136 166 $flstnummer=$zaehler; 137 167 if ($nenner > 0) {$flstnummer.="/".$nenner;} // BruchNr 138 $fsbuchflae=$row["amtlicheflaeche"]; // amtl icheFl. aus DB-Feld168 $fsbuchflae=$row["amtlicheflaeche"]; // amtl. Fl. aus DB-Feld 139 169 $fsgeomflae=$row["fsgeomflae"]; // aus Geometrie ermittelte FlÀche 140 170 $the_Xfactor = $fsbuchflae / $fsgeomflae; // Multiplikator zur Umrechnung geometrische AbschnittsflÀchen in BuchflÀche … … 165 195 if ( ($filtkreis != '' and $filtkreis != $kreis) or ($filtgem != '' and $filtgem != $gemeinde) ) { 166 196 // Einer der gesetzten Filter passt nicht 167 if ($dbg > 2) { //++ Schönes Bild? Stop-Zeichen?197 if ($dbg > 2) { 168 198 echo "\n<p class='err'>Filter Kreis='".$filtkreis."', Gemeinde='".$filtgem."'</p>" 169 199 ."\n<p class='err'>Flstk. Kreis='".$fskrs."', Gemeinde='".$fsgem."'</p>"; … … 179 209 ."\n\t\t\t<table class='kennzfs' title='Flurstückskennzeichen'>\n\t\t\t\t<tr>" // darin Tabelle Kennzeichen 180 210 ."\n\t\t\t\t\t<td class='head'>Gemarkung</td>\n\t\t\t\t\t<td class='head'>Flur</td>\n\t\t\t\t\t<td class='head'>Flurst-Nr.</td>\n\t\t\t\t</tr>" 181 ."\n\t\t\t\t<tr>\n\t\t\t\t\t<td title='Gemarkung'>"; 182 if ($showkey) {echo "<span class='key'>".$gmkgnr."</span><br>";} 183 echo $gemkname." </td>" 211 ."\n\t\t\t\t<tr>\n\t\t\t\t\t<td title='Gemarkung'>".DsKy($gmkgnr, 'Gemarkungsnummer').$gemkname." </td>" 184 212 ."\n\t\t\t\t\t<td title='Flurnummer'>".$flurnummer."</td>" 185 213 ."\n\t\t\t\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t\t\t\t</tr>" … … 194 222 ."\n</tr>"; 195 223 196 echo "\n<tr>" // Zeile: G e b i e t s z u g e h o e r i g k e i t Gemeinde / Kreis / Regierungsbezirk224 echo "\n<tr>" // Zeile: Gebietszugehörigkeit - Gemeinde / Kreis / Reg.bez. 197 225 ."\n\t<td class='ll'><img title='Im Gebiet von' src='ico/Gemeinde.png' width='16' height='16' alt=''> Gebiet:</td>" 198 226 ."\n\t<td>Gemeinde<br>Kreis<br>Regierungsbezirk</td>" 199 ."\n\t<td class='lr' colspan='3'>"; // 3-5 200 if ($showkey) {echo "<span class='key'>(".$gemeinde.")</span> ";} 201 echo $mbez."<br>"; 202 if ($showkey) {echo "<span class='key'>(".$kreis.")</span> ";} 203 echo $kbez."<br>"; 204 if ($showkey) {echo "<span class='key'>(".$bezirk.")</span> ";} 205 echo $rbez 206 ."</td>" 227 ."\n\t<td class='lr' colspan='3'>".DsKy($gemeinde, 'Gemeinde-Nummer').$mbez."<br>".DsKy($kreis, 'Kreis-Nummer').$kbez."<br>".DsKy($bezirk, 'Regierungsbezirk-Nummer').$rbez."</td>" 207 228 ."\n\t<td class='nwlink'>"; 208 229 if ($fsHistorie){ // conf 209 230 echo "\n\t\t<p class='nwlink noprint'>" 210 ."\n\t\t\t<a href='alkisfshist.php?gkz=".$gkz."&gmlid=".$gmlid; 211 if ($showkey) {echo "&showkey=j";} 212 echo "' title='Vorgänger-Flurstücke'>Historie " 213 ."<img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''>" 214 ."</a>" 215 ."\n\t\t</p>\n\t"; 231 ."\n\t\t\t<a href='alkisfshist.php?gkz=".$gkz."&gmlid=".$gmlid.LnkStf() 232 ."' title='Vorgänger-Flurstücke'>Historie <img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''></a>\n\t\t</p>\n\t"; 216 233 } 217 234 echo "</td>" 218 235 ."\n</tr>"; 219 236 220 // ** L a g e b e z e i c h n u n g **237 // L a g e b e z e i c h n u n g 221 238 222 239 // Lagebezeichnung M I T Hausnummer … … 250 267 $hsnr=$row["hausnummer"]; 251 268 echo "\n<tr>"; 252 if ($j === 0) { // 1269 if ($j === 0) { 253 270 echo "\n\t<td class='ll'><img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''> Adresse:</td>"; 254 271 } else { 255 272 echo "\n\t<td> </td>"; 256 273 } 257 echo "\n\t<td> </td>" // 2 258 ."\n\t<td class='lr' colspan='3'>"; // 3-5 259 if ($showkey) {echo "<span class='key' title='StraÃenschlüssel'>(".$row["lage"].")</span> ";} 260 echo $sname." ".$hsnr."</td>"; 261 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>"; // 6 274 echo "\n\t<td> </td>" 275 ."\n\t<td class='lr' colspan='3'>".DsKy($row["lage"], 'StraÃen-*').$sname." ".$hsnr."</td>" 276 ."\n\t<td>\n\t\t<p class='nwlink noprint'>"; 262 277 263 278 // +++ davor auch Link "StraÃe" … … 266 281 $kgmlalt=$kgml; // Katalog GML-ID 267 282 echo "\n\t\t\t<a title='Flurstücke mit oder ohne Hausnummer".$slink."' " 268 ."href='alkisstrasse.php?gkz=".$gkz."&gmlid=".$kgml. "'>Straße "283 ."href='alkisstrasse.php?gkz=".$gkz."&gmlid=".$kgml.LnkStf()."'>Straße " 269 284 ."<img src='ico/Strassen.png' width='16' height='16' alt='STRA'></a> "; 270 285 } 271 286 272 echo "\n\t\t\t<a title='Flurstücke und Gebäude mit Hausnummer ".$hsnr."' href='alkislage.php?gkz=".$gkz."&ltyp=m&gmlid=".$row["gml_id"]; 273 if ($showkey) {echo "&showkey=j";} 274 echo "'>Lage <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a>" 287 echo "\n\t\t\t<a title='Flurstücke und Gebäude mit Hausnummer ".$hsnr."' href='alkislage.php?gkz=".$gkz."&ltyp=m&gmlid=".$row["gml_id"].LnkStf() 288 ."'>Lage <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a>" 275 289 ."\n\t\t</p>\n\t</td>" // 6 276 290 ."\n</tr>"; … … 293 307 if (!$res) { 294 308 echo "\n<p class='err'>Fehler bei Lagebezeichnung ohne Hausnummer</p>"; 295 //if ($dbg > 1) {echo "<p class='dbg'>Fehler:".pg_result_error($res)."</p>";}296 309 if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".htmlentities(str_replace("$1", "'".$gmlid."'", $sql), ENT_QUOTES, "UTF-8")."</p>";} 297 310 } 298 $j=0;299 311 while($row = pg_fetch_assoc($res)) { 300 312 $skey=$row["lage"]; // Strassenschl. … … 304 316 echo "\n<tr>" 305 317 ."\n\t<td class='ll' title='unverschlüsselte Lagebezeichnung'><img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''> Gewanne:</td>" // 1 306 ."\n\t<td></td>" // 2 307 ."\n\t<td class='lr' colspan='3'>".$gewann."</td>" // 3-5 308 ."\n\t<td>\n\t\t<p class='nwlink noprint'>" // 6 309 ."\n\t\t\t<a title='Flurstücke mit der Gewanne ".$gewann."' href='alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$lgml; 310 if ($showkey) {echo "&showkey=j";} 311 echo "'>\n\t\t\tLage <img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''></a>" 312 ."\n\t\t</p>\n\t</td>" // 6 318 ."\n\t<td></td>" 319 ."\n\t<td class='lr' colspan='3'>".$gewann."</td>" 320 ."\n\t<td>\n\t\t<p class='nwlink noprint'>" 321 ."\n\t\t\t<a title='Flurstücke mit der Gewanne ".$gewann."' href='alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$lgml.LnkStf() 322 ."'>\n\t\t\tLage <img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''></a>" 323 ."\n\t\t</p>\n\t</td>" 313 324 ."\n</tr>"; 314 325 } elseif ($skey > 0) { … … 320 331 } 321 332 echo "\n<tr>" 322 ."\n\t<td class='ll'><img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''> Straße:</td>" // 1 323 ."\n\t<td></td>" // 2 324 ."\n\t<td class='lr' colspan='3'>"; // 3-5 325 if ($showkey) {echo "<span class='key'>(".$skey.")</span> ";} 326 echo $sname."</td>"; 327 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>" // 6 328 ."\n\t\t\t<a title='FlurstÃŒcke ".$slink."' href='alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$lgml; 329 if ($showkey) {echo "&showkey=j";} 330 echo "'>\n\t\t\tLage <img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''>\n\t\t\t</a>" 331 ."\n\t\t</p>\n\t</td>" // 6 333 ."\n\t<td class='ll'><img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''> Straße:</td>" 334 ."\n\t<td></td>\n\t<td class='lr' colspan='3'>".DsKy($skey, 'StraÃen-*').$sname."</td>"; 335 echo "\n\t<td>\n\t\t<p class='nwlink noprint'>" 336 ."\n\t\t\t<a title='FlurstÃŒcke ".$slink."' href='alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$lgml.LnkStf() 337 ."'>\n\t\t\tLage <img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''>\n\t\t\t</a>" 338 ."\n\t\t</p>\n\t</td>" 332 339 ."\n</tr>"; 333 340 } 334 $j++;335 341 } 336 342 pg_free_result($res); … … 381 387 } 382 388 $absflaebuch = number_format($flae,0,",",".") . " m²"; // Formatierte Abschnitts-Buch-FlÀche 383 echo "\n\t<td></td>"; // 2 384 echo "\n\t<td class='fla' title='Buchfläche des Abschnitts'>".$absflaebuch."</td>"; // 3 - gleiche Spalte wie Fl. in BodenschÀtzg. 385 echo "\n\t<td></td>"; // 4 386 echo "\n\t<td class='lr' title='".$title."'>"; // 5 - gleiche Sp. wie Zustandsstufe usw. 387 if ($showkey) {echo "<span class='key'>(".$nutzsl.")</span> ";} 388 echo $nutzung 389 ."</td>" 390 ."\n\t<td>"; // 6 389 echo "\n\t<td></td>" 390 ."\n\t<td class='fla' title='Buchfläche des Abschnitts'>".$absflaebuch."</td>" // Sp. wie Fl. in BodenschÀtzg. 391 ."\n\t<td></td>" 392 ."\n\t<td class='lr' title='".$title."'>".DsKy($nutzsl, 'Nutzungsarten-*').$nutzung."</td>" 393 ."\n\t<td>"; 391 394 /* // Derzeit ist keine Gruppe zugeordnet 392 395 switch ($grupp) { // Icon nach 4 Objektartengruppen … … 395 398 case "Vegetation": $ico = "Wald.png"; break; 396 399 case "GewÀsser": $ico = "Wasser.png"; break; 397 default: $ico = "Abschnitt.png";break;400 default: $ico = "Abschnitt.png"; break; 398 401 } 399 402 // Icon ist auch im Druck sichtbar, class='noprint' ? 400 403 echo "<p class='nwlink'><img title='".$title."' src='ico/".$ico."' width='16' height='16' alt='NUA'></p>"; */ 401 echo "</td>" // 6404 echo "</td>" 402 405 ."\n</tr>"; 403 406 $j++; … … 414 417 ."\n\t<td>" // 6 Link auf GebÀude-Auswertung 415 418 ."\n\t\t<p class='nwlink noprint'>" // Gebaeude-Verschneidung 416 ."\n\t\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&gmlid=".$gmlid; 417 if ($showkey) {echo "&showkey=j";} 419 ."\n\t\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&gmlid=".$gmlid.LnkStf(); 418 420 if ($cnt_adressen > 0) { // wenn Adresse vorgekommen ist 419 421 echo "' title='Gebäude oder Bauwerke auf oder an dem Flurstück'>Gebäude/Bauw."; … … 482 484 ."\n\t<td class='lr'><span title='".$kbez1."'>".$boedenzahl."</span>/<span title='".$kbez2."'>".$ackerzahl."</span></td>" 483 485 ."\n\t<td class='lr'>"; 484 485 if ($showkey) {echo "\n\t\t<span class='key'>(".$kulturartk.")</span> ";} 486 echo "\n\t\t<span title='Kulturart'>".$kulturartv."</span> "; 487 488 if ($showkey) {echo "\n\t\t<span class='key'>(".$row['bodenartk'].")</span> ";} 489 echo "\n\t\t<span title='Bodenart'>".$row['bodenartv']."</span> "; 490 491 echo "\n\t\t<span title='Zustandsstufe'>".$row['zustbodv']."</span> "; 486 echo "\n\t\t".DsKy($kulturartk, 'Kulturart')." <span title='Kulturart-*'>".$kulturartv."</span>"; 487 echo "\n\t\t<br>".DsKy($row['bodenartk'], 'Bodenart-*')." <span title='Bodenart'>".$row['bodenartv']."</span>"; 488 echo "\n\t\t<br><span title='Zustandsstufe'>".$row['zustbodv']."</span>"; 492 489 493 490 // 2 ARRAYs auflösen 494 491 if (isset($entsteh)) { 495 492 $ent=trim($entsteh, "{}"); 496 echo "\n\t\t <span title='Enststehungsart oder Klimastufe, Wasserverhältnisse'>"; 497 if ($showkey) {echo "\n\t\t <span class='key'>(".$ent.")</span> ";} 498 werteliste ('e', $ent); 493 echo "\n\t\t<br><span title='Enststehungsart oder Klimastufe, Wasserverhältnisse'>".DsKy($ent, '*'); 494 werteliste('e', $ent); // ++ Zeilenweise mit <br> ? 499 495 echo "</span>"; 500 496 } 501 497 if (isset($sonst)) { 502 498 $son=trim($sonst, "{}"); 503 echo "\n\t\t <span title='Sonstige Angaben'>"; 504 if ($showkey) {echo "\n\t\t <span class='key'>(".$son.")</span> ";} 505 werteliste ('s', $son); 506 echo "</span>"; 499 echo "\n\t\t<br><span title='Sonstige Angaben'>".werteliste('s', $son)."</span>"; // ++ Zeilenweise mit <br> ? 507 500 } 508 501 if (isset($jahr)) { 509 echo "\n\t\t< span title='Jahreszahl'>".$jahr."</span>";502 echo "\n\t\t<br><span title='Jahreszahl'>".$jahr."</span>"; 510 503 } 511 504 echo "\n\t</td>" … … 557 550 ."\n\t<td>Bodenrecht</td>" // 1 558 551 ."\n\t<td class='re'>Festlegung: </td>" // 2 "Art der Festlegung" zu lang 559 ."\n\t<td colspan='3'>"; // 3-5 560 if ($showkey) {echo "<span class='key'>(".$row['wert'].")</span> ";} 561 echo $row['art_verf'] 562 ."</td>"; 563 echo "\n\t<td>" // 6 LINK: 552 ."\n\t<td colspan='3'>".DsKy($row['wert'], 'Art des Verfahrens').$row['art_verf']."</td>"; 553 echo "\n\t<td>" 564 554 ."\n\t\t<p class='nwlink noprint'>" 565 ."\n\t\t\t<a href='alkisbaurecht.php?gkz=".$gkz."&gmlid=".$row['verf_gml']; 566 if ($showkey) {echo "&showkey=j";} 567 echo "' title='Bau-, Raum- oder Bodenordnungsrecht'>Recht <img src='ico/Gericht.png' width='16' height='16' alt=''></a>" 555 ."\n\t\t\t<a href='alkisbaurecht.php?gkz=".$gkz."&gmlid=".$row['verf_gml'].LnkStf() 556 ."' title='Bau-, Raum- oder Bodenordnungsrecht'>Recht <img src='ico/Gericht.png' width='16' height='16' alt=''></a>" 568 557 ."\n\t\t</p>" 569 558 ."\n\t</td>" … … 574 563 ."\n\t<td> </td>" // 1 575 564 ."\n\t<td class='re'>Dienststelle: </td>" // 2 576 ."\n\t<td colspan='3'>"; // 3-5 577 if ($showkey) {echo "<span class='key'>(".$dstell.")</span> ";} 578 echo $row['stelle_bez'] 579 ."</td>" 580 ."\n\t<td> </td>" // 6 565 ."\n\t<td colspan='3'>".DsKy($dstell, 'Art der Dienststelle').$row['stelle_bez']."</td>" 566 ."\n\t<td> </td>" 581 567 ."\n</tr>"; 582 568 } … … 588 574 ."\n\t<td class='re'>Verfahren: </td>" 589 575 ."\n\t<td colspan='3'>"; 590 if ($vnam == "") { 591 echo $vbez; // nur die Nummer 592 } else { // Name oder beides 593 if ($showkey) {echo "<span class='key'>(".$vbez.")</span> ";} 594 echo $vnam; 595 } 576 if ($vnam == "") { 577 echo $vbez; // nur die Nummer 578 } else { // Name oder beides 579 echo DsKy($vbez, 'Nummer des Verfahrens').$vnam; 580 } 596 581 echo "</td>" 597 582 ."\n\t<td> </td>" … … 627 612 $verf_next=array(); // .. und zum AuffÃŒllen leeren 628 613 $stufe++; 629 $i=0; // SchleifenzÀhler Elemente630 614 foreach($verf_akt as $gml_ber_bs) { 631 $i++;632 615 if (ber_bs_zaehl($gml_ber_bs) > 0) { 633 616 $verf_neu=ber_bs_anzg($gml_ber_bs, $eig, false, $gmlid, ""); // Anzeige ber. Buchungst., ggf. mit EigentÃŒmer. 634 617 $anz_neu=count($verf_neu); // Das Ergebnis zÀhlen 635 // if ($dbg > 2) {echo "<p class='dbg'>Weiter zu verfolgen: Stufe ".$stufe.", Element ".$i.", Anzahl: ".$anz_neu."</p>";}636 618 if ($anz_neu > 0) { // wenn neue geliefert 637 619 $verf_next=array_merge($verf_next, $verf_neu); // die neuen an die Sammlung heften … … 647 629 // Wenn der Verweis der Buchungsstelle auf ein Grundbuch ins Leere lÀuft, weil das Grundbuch 648 630 // nicht im SekundÀrbestand vorhanden ist, dann könnte das am NBA-Verfahren liegen. 649 if ( $gezeigt === 0 and $stufe === 1 ) { // and $anzber === 0 650 // Fehlt die Buchung oder das Grundbuch? 631 if ( $gezeigt === 0 and $stufe === 1 ) { 651 632 echo "<p class='err'>Das Grundbuch zur Buchung '".$gml_buchungsstelle."' fehlt in der Datenbank.</p>"; 652 653 if ($dbg > 1) { // fehlt die Buchung?? 633 if ($dbg > 2) { // fehlt die Buchung? 654 634 echo "<p class='dbg'>Suchen mit SQL: SELECT * FROM ax_buchungsstelle WHERE gml_id='".$gml_buchungsstelle."'; </p>"; 655 635 } 656 // Buchung verlinken fÃŒr weitere Suche: alkisgsnw.php?gkz=320&gmlid=DENW18AL0000SEbl657 // Aber das Modul zeigt nichts an (inner join ?)658 // +++ ZunÀchst: Auch im Modul alkisgsnw.php den Fall berÃŒcksichtigen, dass die Buchung vorhanden ist, aber das GB nicht ?!659 636 } 660 637 } -
trunk/info/info/alkisn/alkisgebaeudenw.php
r425 r427 1 1 <?php 2 /* alkisgebaeudenw.php - Gebaeudenachweis 3 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 2 /* alkisgebaeudenw.php 3 4 ALKIS-Buchauskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 7 GebÀude- und Bauwerks-Nachweis fÃŒr ein FlurstÃŒck 4 8 5 9 Version: 6 10 2016-02-24 Version fÃŒr norGIS-ALKIS-Import 7 ... .11 ... 8 12 2020-02-20 Authentifizierung ausgelegert in Function darf_ich() 9 13 2020-12-03 function selbstverlinkung() statt $_SERVER['PHP_SELF'] … … 12 16 2021-03-11 Adresse(n) des gehörtZu-Haus zum Bauwerk nicht mehr hier anzeigen sondern im neuen Bauwerk-Modul. 13 17 2021-12-09 Neue Parameter: $katAmtMix (Kataster-Amt-Mix), $PrntBtn (Drucken-SchaltflÀche) 18 2022-01-13 Neue Functions LnkStf(), DsKy() 19 2022-02-17 Neue Bauwerks-Typen 14 20 */ 15 21 … … 34 40 } 35 41 36 // Kopf fÃŒr die Anzeige der Bauwerke. Nur wenn tatsÀchlich Bauwerke vorkommen.37 42 function bauw_tab_head() { 43 // Kopf fÃŒr die Anzeige der Bauwerke. Nur wenn tatsÀchlich Bauwerke vorkommen. 44 38 45 // Ãberschrift 39 46 echo "\n\n<h3><img src='ico/Haus.png' width='16' height='16' alt=''> Bauwerke</h3>" … … 54 61 55 62 // S T A R T 56 57 63 ini_set("session.cookie_httponly", 1); 58 64 session_start(); … … 92 98 93 99 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 94 $dbg=$debug; // CONF in Arbeits-Variable 95 96 // Mit URL-Parameter "&nodebug=j" kann man die Entwicklungsumgebung (in Conf definiert) ausschalten. 97 // Wirkt temporÀr und wird nicht in Links weiter gereicht. 100 $dbg=$debug; 98 101 if ($nodebug === "j") {$dbg=0;} 99 100 102 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisgebaeudenw.php'"); 101 103 if (!$con) echo "\n<p class='err'>Fehler beim Verbinden der DB</p>"; 102 104 103 // Flurst ueck105 // FlurstÃŒck 104 106 $sqlf ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung 105 107 FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer ".UnqKatAmt("f","g") … … 148 150 ."\n\t\t\t<td class='head'>Flurst-Nr.</td>" 149 151 ."\n\t\t</tr>\n\t\t<tr>" 150 ."\n\t\t\t<td title='Gemarkung'>"; 151 if ($showkey) {echo "<span class='key'>".$gmkgnr."</span><br>";} 152 echo $gemkname." </td>" 152 ."\n\t\t\t<td title='Gemarkung'>".DsKy($gmkgnr, 'Gemarkungsnummer').$gemkname." </td>" 153 153 ."\n\t\t\t<td title='Flurnummer'>".$flurnummer."</td>" 154 154 ."\n\t\t\t<td title='Flurstücksnummer (Zähler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>" … … 158 158 ."\n\t<td>" 159 159 ."\n\t\t<p class='nwlink noprint'>" // Links zu anderem Nachweis 160 ."\n\t\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid; 161 if ($showkey) {echo "&showkey=j";} 162 echo "&eig=n' title='Flurstücksnachweis'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>" 160 ."\n\t\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$gmlid.LnkStf() 161 ."&eig=n' title='Flurstücksnachweis'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>" 163 162 ."\n\t\t</p>" 164 163 ."\n\t</td>" … … 169 168 pg_free_result($resf); 170 169 171 // G e b a e u d e 172 170 // GebÀude 173 171 $sqlg ="SELECT g.gml_id, g.name, g.bauweise, g.gebaeudefunktion, h.beschreibung AS bauweise_beschreibung, u.beschreibung AS bezeichner, u.dokumentation AS gfktd, g.zustand, z.beschreibung AS bzustand, 174 round(st_area(g.wkb_geometry)::numeric,2) AS gebflae, "; // GEB-Fl aeche, auch ausserhalb des FS172 round(st_area(g.wkb_geometry)::numeric,2) AS gebflae, "; // GEB-FlÀche, auch ausserhalb des FS 175 173 $sqlg.="round(st_area(ST_Intersection(g.wkb_geometry,f.wkb_geometry))::numeric,2) AS schnittflae, "; // wie viel vom GEB liegt im FS? 176 174 $sqlg.="st_within(g.wkb_geometry,f.wkb_geometry) as drin … … 181 179 WHERE f.gml_id= $1 AND f.endet IS NULL and g.endet IS NULL "; 182 180 183 // "within" -> nur Geb., die komplett im FS liegen. "intersects" -> auch teil- ueberlappende Flst.181 // "within" -> nur Geb., die komplett im FS liegen. "intersects" -> auch teil-ÃŒberlappende Flst. 184 182 $sqlg.="AND st_intersects(g.wkb_geometry,f.wkb_geometry) = true "; 185 183 // RLP: keine Relationen zu NebengebÀuden. Auf Qualifizierung verzichten, sonst werden NebengebÀude nicht angezeigt … … 202 200 $ggml=$rowg["gml_id"]; 203 201 $gebflsum=$gebflsum + $rowg["schnittflae"]; 204 $gnam=trim(trim($rowg["name"], "{}"), '"'); // Geb aeude-Name ist ein Array in der DB: '{"A","B"}'202 $gnam=trim(trim($rowg["name"], "{}"), '"'); // GebÀude-Name ist ein Array in der DB: '{"A","B"}' 205 203 // Mehrfachbelegung nur theoretisch. Entklammern reicht. Mal mit und mal ohne "" drum!? 206 /* SELECT name FROM ax_gebaeude WHERE NOT name IS NULL AND array_length(name, 1) > 1; */207 204 $gfktk=htmlentities($rowg["gebaeudefunktion"], ENT_QUOTES, "UTF-8"); // Geb.-Funktion Key 208 $gfktv=htmlentities($rowg["bezeichner"], ENT_QUOTES, "UTF-8"); // Geb.FunktionValue209 $gfktd=htmlentities($rowg["gfktd"], ENT_QUOTES, "UTF-8"); // GebÀude-Funktion-Description205 $gfktv=htmlentities($rowg["bezeichner"], ENT_QUOTES, "UTF-8"); // -Value 206 $gfktd=htmlentities($rowg["gfktd"], ENT_QUOTES, "UTF-8"); // -Description 210 207 211 208 $gbauw=$rowg["bauweise"]; … … 235 232 ."\n\t<td>"; 236 233 if ($gnam != "") {echo "<span title='Gebäudename'>".$gnam."</span><br>";} 237 echo "</td>"; 238 239 echo "\n\t<td class='fla'>".$f1."</td>" 240 ."\n\t<td class='".$gstyle."'>".$f2."</td>"; // FlÀchenangaben 241 242 echo "\n\t<td title='".$gfktd."'>"; // Funktion 243 if ($showkey) {echo "<span class='key'>(".$gfktk.")</span> ";} 244 echo $gfktv; 245 echo "</td>"; 246 247 echo "\n\t<td>"; 234 echo "</td>" 235 ."\n\t<td class='fla'>".$f1."</td>\n\t<td class='".$gstyle."'>".$f2."</td>" // FlÀchenangaben 236 ."\n\t<td title='".$gfktd."'>".DsKy($gfktk, 'Funktion-*').$gfktv."</td>" 237 ."\n\t<td>"; 248 238 if ($gbauw != "") { 249 if ($showkey) {echo "<span class='key'>(".$gbauw.")</span> ";} 250 echo $gbauwb; 251 } 252 echo "</td>"; 253 254 echo "\n\t<td>"; 239 echo DsKy($gbauw, 'Bauweise-*').$gbauwb; 240 } 241 echo "</td>\n\t<td>"; 255 242 if ($gzus != "") { 256 if ($showkey) {echo "<span class='key'>(".$gzus.")</span> ";} 257 echo $gzustand; 243 echo DsKy(gzus, 'Zustand-*').$gzustand; 258 244 } 259 245 echo "</td>"; … … 298 284 $lagetxt=$snam." ".$hsnr; 299 285 } 300 echo "\n\t\t<a title='".$lagetitl."' href='alkislage.php?gkz=".$gkz."&gmlid=".$gmllag."&ltyp=".$ltyp; 301 if ($showkey) {echo "&showkey=j";} 302 echo "'>"; 303 if ($showkey) {echo "<span class='key'>(".$skey.")</span> ";} 304 echo $lagetxt." <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a><br>"; 286 echo "\n\t\t<a title='".$lagetitl."' href='alkislage.php?gkz=".$gkz."&gmlid=".$gmllag."&ltyp=".$ltyp.LnkStf()."'>" 287 .DsKy($skey, 'Straßen-*').$lagetxt." <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a><br>"; 305 288 } // Ende Loop Lage m.H. 306 289 pg_free_result($resl); … … 308 291 309 292 echo "\n\t<td class='nwlink noprint'>" // Link Haus 310 ."\n\t\t<a title='Daten zum Gebäude-Objekt' href='alkishaus.php?gkz=".$gkz."&gmlid=".$ggml; 311 if ($showkey) {echo "&showkey=j";} 312 echo "'>Haus <img src='ico/Haus.png' width='16' height='16' alt=''></a>" 293 ."\n\t\t<a title='Daten zum Gebäude-Objekt' href='alkishaus.php?gkz=".$gkz."&gmlid=".$ggml.LnkStf() 294 ."'>Haus <img src='ico/Haus.png' width='16' height='16' alt=''></a>" 313 295 ."\n\t</td>" 314 296 ."\n</tr>"; … … 317 299 if ($gebnr === 0) { 318 300 echo "<p><br>Kein Gebäude auf diesem Flurstück.<br> </p>"; 319 //if ($dbg > 2) {echo "\n<p class='err'>SQL=<br>".$sqlg."<br>$1 = gml_id = '".$gmlid."'</p>";}320 301 } else { 321 302 echo "\n<tr>" … … 331 312 332 313 // B a u w e r k e 333 334 314 // Konstanten fÃŒr Sortierung und Gruppierung 335 315 $btyp_verkehr=1; $btyp_gewaesser=2; $btyp_sonst=3; $btyp_indu=4; $btyp_sport=5; 336 316 $btyp_leitg=6; $btyp_trans=7; $btyp_turm=8; $btyp_vorrat=9; 337 338 // Tabllen-Alias, 2stellig. 1. Stelle: f_=FlurstÃŒck, b_=Bauwerk, k_=Key = SchlÃŒsseltabelle. // 2. Stelle: wie Konstante 339 340 // 1 -V e r k e h r 317 $btyp_hist=10; $btyp_heil=11; $btyp_oeff=12; $btyp_bpkt=13; 318 319 // Tabllen-Alias, 2-3 stellig. 1. Stelle: f_=FlurstÃŒck, b_=Bauwerk, k_=Key = SchlÃŒsseltabelle. // 2.-3. Stelle: wie Konstante 320 321 // 1 - V e r k e h r 341 322 $sqlb="SELECT ".$btyp_verkehr." AS bwtyp, b1.gml_id, 342 b1.bauwerksfunktion, k1.beschreibung AS bezeichner, k1.dokumentation AS bfktd, b1.bezeichnung, b1.name, NULL AS gehoertzu,323 b1.bauwerksfunktion, k1.beschreibung, k1.dokumentation, b1.bezeichnung, b1.name, NULL AS gehoertzu, 343 324 round(st_area(b1.wkb_geometry)::numeric,2) AS gebflae, round(st_area(ST_Intersection(b1.wkb_geometry,f1.wkb_geometry))::numeric,2) AS schnittflae, 344 325 st_within(b1.wkb_geometry,f1.wkb_geometry) as drin, GeometryType(b1.wkb_geometry) as bgeotyp … … 349 330 // 2 - G e w À s s e r 350 331 $sqlb.="UNION 351 SELECT ".$btyp_gewaesser." AS bwtyp, b2.gml_id, b2.bauwerksfunktion, ug.beschreibung AS bezeichner, ug.dokumentation AS bfktd, 352 b2.bezeichnung, b2.name, NULL AS gehoertzu, 332 SELECT ".$btyp_gewaesser." AS bwtyp, b2.gml_id, b2.bauwerksfunktion, k2.beschreibung, k2.dokumentation, b2.bezeichnung, b2.name, NULL AS gehoertzu, 353 333 round(st_area(b2.wkb_geometry)::numeric,2) AS gebflae, round(st_area(ST_Intersection(b2.wkb_geometry,f2.wkb_geometry))::numeric,2) AS schnittflae, 354 334 st_within(b2.wkb_geometry,f2.wkb_geometry) as drin, GeometryType(b2.wkb_geometry) as bgeotyp 355 335 FROM ax_flurstueck f2 356 336 JOIN ax_bauwerkimgewaesserbereich b2 ON st_intersects(b2.wkb_geometry,f2.wkb_geometry) = true 357 LEFT JOIN ax_bauwerksfunktion_bauwerkimgewaesserbereich ug ON b2.bauwerksfunktion = ug.wert337 LEFT JOIN ax_bauwerksfunktion_bauwerkimgewaesserbereich k2 ON b2.bauwerksfunktion = k2.wert 358 338 WHERE f2.gml_id = $1 AND f2.endet IS NULL AND b2.endet IS NULL "; 359 339 // 3 - S o n s t i g e Bauwerke 360 340 $sqlb.="UNION 361 SELECT ".$btyp_sonst." AS bwtyp, b3.gml_id, b3.bauwerksfunktion, k3.beschreibung AS bezeichner, k3.dokumentation AS bfktd, 362 b3.bezeichnung, b3.name, b3.gehoertzu, 341 SELECT ".$btyp_sonst." AS bwtyp, b3.gml_id, b3.bauwerksfunktion, k3.beschreibung, k3.dokumentation, b3.bezeichnung, b3.name, b3.gehoertzu, 363 342 round(st_area(b3.wkb_geometry)::numeric,2) AS gebflae, round(st_area(ST_Intersection(b3.wkb_geometry,f3.wkb_geometry))::numeric,2) AS schnittflae, 364 343 st_within(b3.wkb_geometry,f3.wkb_geometry) as drin, GeometryType(b3.wkb_geometry) as bgeotyp … … 369 348 // 4 - Bauwerk oder Anlage fÃŒr I n d u s t r i e und Gewerbe 370 349 $sqlb.="UNION 371 SELECT ".$btyp_indu." AS bwtyp, b4.gml_id, b4.bauwerksfunktion, k4.beschreibung AS bezeichner, k4.dokumentation AS bfktd, 372 b4.bezeichnung, b4.name, NULL AS gehoertzu, 350 SELECT ".$btyp_indu." AS bwtyp, b4.gml_id, b4.bauwerksfunktion, k4.beschreibung, k4.dokumentation, b4.bezeichnung, b4.name, NULL AS gehoertzu, 373 351 round(st_area(b4.wkb_geometry)::numeric,2) AS gebflae, round(st_area(ST_Intersection(b4.wkb_geometry,f4.wkb_geometry))::numeric,2) AS schnittflae, 374 352 st_within(b4.wkb_geometry,f4.wkb_geometry) as drin, GeometryType(b4.wkb_geometry) as bgeotyp … … 379 357 // 5 - Bauwerk oder Anlage fÃŒr S p o r t , Freizeit und Erholung 380 358 $sqlb.="UNION 381 SELECT ".$btyp_sport." AS bwtyp, b5.gml_id, b5.bauwerksfunktion, k5.beschreibung AS bezeichner, k5.dokumentation AS bfktd, 382 NULL AS bezeichnung, b5.name, NULL AS gehoertzu, 359 SELECT ".$btyp_sport." AS bwtyp, b5.gml_id, b5.bauwerksfunktion, k5.beschreibung, k5.dokumentation, NULL AS bezeichnung, b5.name, NULL AS gehoertzu, 383 360 round(st_area(b5.wkb_geometry)::numeric,2) AS gebflae, round(st_area(ST_Intersection(b5.wkb_geometry,f5.wkb_geometry))::numeric,2) AS schnittflae, 384 361 st_within(b5.wkb_geometry,f5.wkb_geometry) as drin, GeometryType(b5.wkb_geometry) as bgeotyp … … 389 366 // 6 - L e i t u n g 390 367 $sqlb.="UNION 391 SELECT ".$btyp_leitg." AS bwtyp, b6.gml_id, b6.bauwerksfunktion, k6.beschreibung AS bezeichner, k6.dokumentation AS bfktd, 392 NULL AS bezeichnung, b6.name, NULL AS gehoertzu, 368 SELECT ".$btyp_leitg." AS bwtyp, b6.gml_id, b6.bauwerksfunktion, k6.beschreibung, k6.dokumentation, NULL AS bezeichnung, b6.name, NULL AS gehoertzu, 393 369 round(st_area(b6.wkb_geometry)::numeric,2) AS gebflae, round(st_area(ST_Intersection(b6.wkb_geometry,f6.wkb_geometry))::numeric,2) AS schnittflae, 394 370 st_within(b6.wkb_geometry,f6.wkb_geometry) as drin, GeometryType(b6.wkb_geometry) as bgeotyp … … 399 375 // 7 - T r a n s p o r t a n l a g e 400 376 $sqlb.="UNION 401 SELECT ".$btyp_trans." AS bwtyp, b7.gml_id, b7.bauwerksfunktion, k7.beschreibung AS bezeichner, k7.dokumentation AS bfktd, 402 NULL AS bezeichnung, NULL AS name, NULL AS gehoertzu, 377 SELECT ".$btyp_trans." AS bwtyp, b7.gml_id, b7.bauwerksfunktion, k7.beschreibung, k7.dokumentation, NULL AS bezeichnung, NULL AS name, NULL AS gehoertzu, 403 378 round(st_area(b7.wkb_geometry)::numeric,2) AS gebflae, round(st_area(ST_Intersection(b7.wkb_geometry,f7.wkb_geometry))::numeric,2) AS schnittflae, 404 379 st_within(b7.wkb_geometry,f7.wkb_geometry) as drin, GeometryType(b7.wkb_geometry) as bgeotyp … … 409 384 // 8 - T u r m (Sonderfall Array) 410 385 $sqlb.="UNION 411 SELECT ".$btyp_turm." AS bwtyp, b8.gml_id, k8.wert AS bauwerksfunktion, k8.beschreibung AS bezeichner, k8.dokumentation AS bfktd, 412 NULL AS bezeichnung, b8.name, NULL AS gehoertzu, 386 SELECT ".$btyp_turm." AS bwtyp, b8.gml_id, k8.wert AS bauwerksfunktion, k8.beschreibung, k8.dokumentation, NULL AS bezeichnung, b8.name, NULL AS gehoertzu, 413 387 round(st_area(b8.wkb_geometry)::numeric,2) AS gebflae, round(st_area(ST_Intersection(b8.wkb_geometry,f8.wkb_geometry))::numeric,2) AS schnittflae, 414 388 st_within(b8.wkb_geometry,f8.wkb_geometry) as drin, GeometryType(b8.wkb_geometry) as bgeotyp … … 419 393 // 9 - V o r r a t s b e h À l t e r , S p e i c h e r b a u w e r k 420 394 $sqlb.="UNION 421 SELECT ".$btyp_vorrat." AS bwtyp, b9.gml_id, b9.bauwerksfunktion, k9.beschreibung AS bezeichner, k9.dokumentation AS bfktd, 422 NULL AS bezeichnung, b9.name, NULL AS gehoertzu, 395 SELECT ".$btyp_vorrat." AS bwtyp, b9.gml_id, b9.bauwerksfunktion, k9.beschreibung, k9.dokumentation, NULL AS bezeichnung, b9.name, NULL AS gehoertzu, 423 396 round(st_area(b9.wkb_geometry)::numeric,2) AS gebflae, round(st_area(ST_Intersection(b9.wkb_geometry,f9.wkb_geometry))::numeric,2) AS schnittflae, 424 397 st_within(b9.wkb_geometry,f9.wkb_geometry) as drin, GeometryType(b9.wkb_geometry) as bgeotyp … … 427 400 LEFT JOIN ax_bauwerksfunktion_vorratsbehaelterspeicherbauwerk k9 ON b9.bauwerksfunktion = k9.wert 428 401 WHERE f9.gml_id = $1 AND f9.endet IS NULL AND b9.endet IS NULL "; 402 // 10 - H i s t o r i s c h e s Bauwerk oder historische Einrichtung 403 $sqlb.="UNION 404 SELECT ".$btyp_hist." AS bwtyp, b10.gml_id, NULL AS bauwerksfunktion, k10.beschreibung, k10.dokumentation, NULL AS bezeichnung, b10.name, NULL AS gehoertzu, 405 round(st_area(b10.wkb_geometry)::numeric,2) AS gebflae, round(st_area(ST_Intersection(b10.wkb_geometry,f10.wkb_geometry))::numeric,2) AS schnittflae, 406 st_within(b10.wkb_geometry,f10.wkb_geometry) as drin, GeometryType(b10.wkb_geometry) as bgeotyp 407 FROM ax_flurstueck f10 408 JOIN ax_historischesbauwerkoderhistorischeeinrichtung b10 ON st_intersects(b10.wkb_geometry,f10.wkb_geometry) = true 409 LEFT JOIN ax_archaeologischertyp_historischesbauwerkoderhistorischee k10 ON b10.archaeologischertyp = k10.wert 410 WHERE f10.gml_id = $1 AND f10.endet IS NULL AND b10.endet IS NULL "; 411 // 11 - H e i l q u e l l e , G a s q u e l l e 412 $sqlb.="UNION 413 SELECT ".$btyp_heil." AS bwtyp, b11.gml_id, NULL AS bauwerksfunktion, k11.beschreibung, k11.dokumentation, NULL AS bezeichnung, b11.name, NULL AS gehoertzu, 414 round(st_area(b11.wkb_geometry)::numeric,2) AS gebflae, round(st_area(ST_Intersection(b11.wkb_geometry,f11.wkb_geometry))::numeric,2) AS schnittflae, 415 st_within(b11.wkb_geometry,f11.wkb_geometry) as drin, GeometryType(b11.wkb_geometry) as bgeotyp 416 FROM ax_flurstueck f11 417 JOIN ax_heilquellegasquelle b11 ON st_intersects(b11.wkb_geometry,f11.wkb_geometry) = true 418 LEFT JOIN ax_art_heilquellegasquelle k11 ON b11.art = k11.wert 419 WHERE f11.gml_id = $1 AND f11.endet IS NULL AND b11.endet IS NULL "; 420 // 12 - Einrichtung in öffentlichen Bereichen 421 $sqlb.="UNION 422 SELECT ".$btyp_oeff." AS bwtyp, b12.gml_id, NULL AS bauwerksfunktion, k12.beschreibung, k12.dokumentation, NULL AS bezeichnung, NULL AS name, NULL AS gehoertzu, 423 round(st_area(b12.wkb_geometry)::numeric,2) AS gebflae, round(st_area(ST_Intersection(b12.wkb_geometry,f12.wkb_geometry))::numeric,2) AS schnittflae, 424 st_within(b12.wkb_geometry,f12.wkb_geometry) as drin, GeometryType(b12.wkb_geometry) as bgeotyp 425 FROM ax_flurstueck f12 426 JOIN ax_einrichtunginoeffentlichenbereichen b12 ON st_intersects(b12.wkb_geometry,f12.wkb_geometry) = true 427 LEFT JOIN ax_art_einrichtunginoeffentlichenbereichen k12 ON b12.art = k12.wert 428 WHERE f12.gml_id = $1 AND f12.endet IS NULL AND b12.endet IS NULL "; 429 /* TestfÀlle FS: SELECT f.gml_id FROM ax_flurstueck f JOIN ax_einrichtunginoeffentlichenbereichen b ON st_intersects(b.wkb_geometry,f.wkb_geometry) = true; 430 140: DENW17AL34g000F6 */ 431 432 /* // 13 - Besonderer Bauwerkspunkt (ohne Geometrie !) 433 $sqlb.="UNION 434 SELECT ".$btyp_bpkt. 435 // Tab: ax_besondererbauwerkspunkt */ 429 436 430 437 // Generell ... … … 449 456 $bauflsum=$bauflsum + $rowb["schnittflae"]; 450 457 $bbez=htmlentities($rowb["bezeichnung"], ENT_QUOTES, "UTF-8"); 458 451 459 $bfktk=htmlentities($rowb["bauwerksfunktion"], ENT_QUOTES, "UTF-8"); 452 $bfktv=htmlentities($rowb["bezeichner"], ENT_QUOTES, "UTF-8"); 453 $bfktd=htmlentities($rowb["bfktd"], ENT_QUOTES, "UTF-8"); 460 $bfktv=htmlentities($rowb["beschreibung"], ENT_QUOTES, "UTF-8"); 461 $bfktd=htmlentities($rowb["dokumentation"], ENT_QUOTES, "UTF-8"); 462 454 463 $bnam=htmlentities($rowb["name"], ENT_QUOTES, "UTF-8"); 455 464 $bgeb=$rowb["gehoertzu"]; … … 500 509 $btyptitle='Bauwerk im Verkehrsbereich'; break; 501 510 case $btyp_gewaesser: 502 $btyptitle='Bauwerk im Gew Àsserbereich'; break;511 $btyptitle='Bauwerk im Gewässerbereich'; break; 503 512 case $btyp_sonst: 504 513 $btyptitle='Sonstiges Bauwerk oder sonstige Einrichtung'; break; 505 514 case $btyp_indu: 506 $btyptitle="Bauwerk oder Anlage f ÃŒr Industrie und Gewerbe"; break;515 $btyptitle="Bauwerk oder Anlage für Industrie und Gewerbe"; break; 507 516 case $btyp_sport: 508 $btyptitle="Bauwerk oder Anlage f ÃŒr Sport, Freizeit und Erholung"; break;517 $btyptitle="Bauwerk oder Anlage für Sport, Freizeit und Erholung"; break; 509 518 case $btyp_leitg: 510 519 $btyptitle="Leitung"; break; … … 514 523 $btyptitle="Turm"; break; 515 524 case $btyp_vorrat: 516 $btyptitle="VorratsbehÀlter, Speicherbauwerk"; break; 525 $btyptitle="Vorratsbehälter, Speicherbauwerk"; break; 526 case $btyp_hist: 527 $btyptitle="Historisches Bauwerk oder historische Einrichtung"; break; 528 case $btyp_heil: 529 $btyptitle="Heilquelle, Gasquelle"; break; 530 case $btyp_oeff: 531 $btyptitle="Einrichtung in öffentlichen Bereichen"; break; 532 case $btyp_bpkt: 533 $btyptitle="Besonderer Bauwerkspunkt"; break; 517 534 default: 518 $btyptitle='Fehler '; break;535 $btyptitle='Fehler!'; break; 519 536 } 520 537 echo "<tr><td colspan=3></td><td colspan=2 class='gw'>".$btyptitle."</td></tr>"; // ++ Symbol? … … 528 545 echo "\n\t<td class='fla'>".$f1."</td>" 529 546 ."\n\t<td class='".$bstyle."'>".$f2."</td>"; // FlÀchenangaben 530 echo "\n\t<td>"; 531 if ($showkey) {echo "<span class='key'>(".$bfktk.")</span> ";} // Bauwerksfunktion 532 echo "<span title='".$bfktd ."'>".$bfktv."</span>"; 533 echo "</td>"; 547 echo "\n\t<td>".DsKy($bfktk, 'Bauwerksfunktion-*')."<span title='".$bfktd ."'>".$bfktv."</span></td>"; 534 548 535 549 // Lage / Haus (nur bei Typ 3 sonstige) … … 537 551 if ($bgeb != "") { // gehört zu GebÀude 538 552 // bw_gz_lage($bgeb); // Function: Lage (Adresse) ausgeben 539 echo "\n\t\t<a title='gehört zu' href='alkishaus.php?gkz=".$gkz."&gmlid=".$bgeb; 540 if ($showkey) {echo "&showkey=j";} 541 echo "'>Haus <img src='ico/Haus.png' width='16' height='16' alt=''></a>"; 553 echo "\n\t\t<a title='gehört zu' href='alkishaus.php?gkz=".$gkz."&gmlid=".$bgeb.LnkStf() 554 ."'>Haus <img src='ico/Haus.png' width='16' height='16' alt=''></a>"; 542 555 } 543 556 echo "\n\t</td>"; 544 557 545 558 // Bauwerk Details 546 echo "\n\t<td class='nwlink noprint'>"; // Link 547 echo "\n\t\t<a title='Bauwerksdaten' href='alkisbauwerk.php?gkz=".$gkz."&btyp=".$btyp."&gmlid=".$bgml; 548 if ($showkey) {echo "&showkey=j";} 549 echo "'>Bauwerk <img src='ico/Haus.png' width='16' height='16' alt=''></a>"; // +++ Icon fÃŒr Bauwerk schaffen +++ 550 echo "\n\t</td>" 559 echo "\n\t<td class='nwlink noprint'>" // Link 560 ."\n\t\t<a title='Bauwerksdaten' href='alkisbauwerk.php?gkz=".$gkz."&btyp=".$btyp."&gmlid=".$bgml.LnkStf() 561 ."'>Bauwerk <img src='ico/Haus.png' width='16' height='16' alt=''></a>" // Icon fÃŒr Bauwerk schaffen 562 ."\n\t</td>" 551 563 ."\n</tr>"; 552 564 } -
trunk/info/info/alkisn/alkisgsnw.php
r425 r427 1 1 <?php 2 /* Modul: alkisgsnw.php 3 4 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 5 GrundstÃŒcksnachweis fuer ein GrundstÃŒck aus ALKIS PostNAS 2 /* alkisgsnw.php 3 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 7 GrundstÃŒcksnachweis fÃŒr ein GrundstÃŒck (Buchung) aus ALKIS PostNAS 6 8 7 9 Version: 8 2018-05-03 Neues Modul "gsnw" abgeleitet aus "fsnw" 9 2018-11-09 Umstellung Full-Schema 10 2020-02-20 Authentifizierung ausgelagert in Function darf_ich() 10 2018-05-03 Neues Modul 11 ... 11 12 2020-12-03 function selbstverlinkung() statt $_SERVER['PHP_SELF'] 12 13 2020-12-15 Input-Validation und Strict Comparisation (===) 13 14 2021-12-09 Neue Parameter: $katAmtMix (Kataster-Amt-Mix), $PrntBtn (Drucken-SchaltflÀche) 15 2022-01-13 Neue Functions LnkStf(), DsKy() 14 16 15 17 ToDo: … … 74 76 // Der GrundstÃŒcksnachweis wird aus anderen Modulen nur fÃŒr die "GrundstÃŒck"-Buchung aufgerufen, so dass diese Suche nicht notwendig ist. 75 77 // Bei Aufrufen von auÃen kann dies aber sinnvoll sein. 76 77 // ToDo: um Mehr als eine Stufe zurÃŒck fÃŒhren (max. 3)78 78 79 79 global $gkz, $dbg, $showkey, $gerooted; … … 110 110 $gml_d=$row["gml_id"]; 111 111 $bvnr=ltrim($row["laufendenummer"], '0'); 112 echo "\n\t\t\t<a href='alkisgsnw.php?gkz=".$gkz."&gmlid=".$gml_d; 113 if ($showkey) {echo "&showkey=j";} 114 echo "' title='Grundstücksnachweis'>Buchung ".$bvnr 112 echo "\n\t\t\t<a href='alkisgsnw.php?gkz=".$gkz."&gmlid=".$gml_d.LnkStf() 113 ."' title='Grundstücksnachweis'>Buchung ".$bvnr 115 114 ." <img src='ico/Grundstueck_Link.png' width='16' height='16' alt=''></a><br>"; 116 115 } … … 170 169 <?php 171 170 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 172 $dbg=$debug; // CONF in Arbeits-Variable171 $dbg=$debug; 173 172 if ($nodebug === "j") {$dbg=0;} 174 173 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisgsnw.php'"); … … 227 226 if ($zpaar) {$trclass='paa';} else {$trclass='unp';} // Farbwechsel 228 227 $zpaar=!$zpaar; 229 echo "\n<tr class='".$trclass."'>"; // eine Zeile je Flurstueck 230 echo "\n\t<td>"; 231 if ($showkey) {echo "<span class='key'>".$rowfs["gemarkungsnummer"]."</span> ";} 232 echo $rowfs["bezeichnung"] 233 ."</td>" 228 echo "\n<tr class='".$trclass."'>"; // eine Zeile je FlurstÃŒck 229 echo "\n\t<td>".DsKy($rowfs["gemarkungsnummer"], 'Gemarkungsnummer').$rowfs["bezeichnung"]."</td>" 234 230 ."\n\t<td>".$flur."</td>" 235 231 ."\n\t<td class='fsnr'><span class='wichtig'>".$fskenn."</span></td>" 236 232 ."\n\t<td class='fla'>".$flae."</td>" 237 233 ."\n\t<td>\n\t\t<p class='nwlink noprint'>" 238 ."\n\t\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowfs["gml_id"]."&eig=n"; 239 if ($showkey) {echo "&showkey=j";} 240 echo "' title='Flurstücksnachweis'>Flurstück " 241 ."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>" 234 ."\n\t\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowfs["gml_id"]."&eig=n".LnkStf() 235 ."' title='Flurstücksnachweis'>Flurstück " 236 ."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>" 242 237 ."</a>\n\t\t</p>" 243 238 ."\n\t</td>" -
trunk/info/info/alkisn/alkishaus.php
r425 r427 1 1 <?php 2 /* alkishaus.php - viele Daten zu EINEM ALKIS-GebÀude-Objekt 3 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 2 /* alkishaus.php 3 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 7 Daten zu EINEM ALKIS-GebÀude-Objekt 4 8 5 9 Version: … … 11 15 2020-12-15 Input-Validation und Strict Comparisation (===) 12 16 2021-12-09 Neue Parameter: $katAmtMix (Kataster-Amt-Mix), $PrntBtn (Drucken-SchaltflÀche). Gemeinde in Adresse 17 2022-01-13 Neue Functions LnkStf(), DsKy() 13 18 14 19 ToDo: 20 - per Relation dazugehörige Bauwerke (z.B. Ãberdachung) suchen, ax_sonstigesbauwerkodersonstigeeinrichtung.gehoertzu 15 21 - Template im WMS auf Ebene GebÀude hierhin verknÃŒpfen. 16 22 */ … … 55 61 56 62 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 57 $dbg=$debug; // CONF in Arbeits-Variable 58 59 // Mit URL-Parameter "&nodebug=j" kann man die Entwicklungsumgebung (in Conf definiert) ausschalten. 60 // Wirkt temporÀr und wird nicht in Links weiter gereicht. 63 $dbg=$debug; 61 64 if ($nodebug === "j") {$dbg=0;} 62 65 … … 64 67 if (!$con) echo "\n<p class='err'>Fehler beim Verbinden der DB</p>"; 65 68 66 // G e b a eu d e69 // G e b À u d e 67 70 // ... g.qualitaetsangaben, 68 71 $sqlg ="SELECT g.gml_id, g.name, g.bauweise, g.gebaeudefunktion, g.anzahlderoberirdischengeschosse AS aog, g.anzahlderunterirdischengeschosse AS aug, … … 97 100 98 101 // Balken 99 echo "\n<p class='balken geb'>ALKIS Haus ".$gmlid." </p>"; 100 echo "\n<h2><img src='ico/Haus.png' width='16' height='16' alt=''> Haus (Gebäude)</h2>\n<hr>"; 101 102 echo "<p class='nwlink noprint'>"; // Umschalter: auch leere Felder 103 echo "Umschalten: <a class='nwlink' href='".selbstverlinkung()."?gkz=".$gkz."&gmlid=".$gmlid; 104 if ($showkey) {echo "&showkey=j";} else {echo "&showkey=n";} 105 if ($allefelder) { 106 echo "&allfld=n'>nur Felder mit Inhalt"; 107 } else { 108 echo "&allfld=j'>auch leere Felder"; 109 } 102 echo "\n<p class='balken geb'>ALKIS Haus ".$gmlid." </p>" 103 ."\n<h2><img src='ico/Haus.png' width='16' height='16' alt=''> Haus (Gebäude)</h2>\n<hr>"; 104 105 echo "<p class='nwlink noprint'>" // Umschalter: auch leere Felder 106 ."Umschalten: <a class='nwlink' href='".selbstverlinkung()."?gkz=".$gkz."&gmlid=".$gmlid.LnkStf(); 107 if ($allefelder) { 108 echo "&allfld=n'>nur Felder mit Inhalt"; 109 } else { 110 echo "&allfld=j'>auch leere Felder"; 111 } 110 112 echo "</a></p>"; 111 113 … … 128 130 $aug=$rowg["aug"]; 129 131 $hoh=$rowg["hochhaus"]; 130 $nam=trim(trim($rowg["name"], "{}"), '"'); // Geb aeude-Name ist ein Array.132 $nam=trim(trim($rowg["name"], "{}"), '"'); // GebÀude-Name ist ein Array. 131 133 // Mehrfachbelegung theoretisch. Entklammern reicht. Mal mit und mal ohne "" drum. 132 134 $kfunk=$rowg["gebaeudefunktion"]; … … 215 217 ."\n\t<td class='fett'>"; 216 218 } 217 echo "\n\t\t<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''> "; 218 if ($showkey) {echo "<span class='key'>(".$skey.")</span> ";} 219 echo "\n\t\t<a title='Hausnummer' href='alkislage.php?gkz=".$gkz."&gmlid=".$gmllag."&ltyp=".$ltyp; 220 if ($showkey) {echo "&showkey=j";} 221 echo "'>".$snam." ".$hsnr; 219 echo "\n\t\t<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''> ".DsKy($skey, 'Straßen-*'); 220 echo "\n\t\t<a title='Hausnummer' href='alkislage.php?gkz=".$gkz."&gmlid=".$gmllag."&ltyp=".$ltyp.LnkStf()."'>".$snam." ".$hsnr; 222 221 if ($ltyp === "p") {echo ", lfd.Nr ".$hlfd;} 223 222 echo "</a>, ".$gemeinde."<br>"; … … 229 228 echo "\n<tr>" 230 229 ."\n\t<td class='li'>Gebäudefunktion</td>" 231 ."\n\t<td class='fett'>"; 232 if ($showkey and $kfunk != '') {echo "<span class='key'>(".$kfunk.")</span> ";} 233 echo $bfunk."</td>" 230 ."\n\t<td class='fett'>".DsKy($kfunk, 'Gebäudefunktion-*').$bfunk."</td>" 234 231 ."\n\t<td>" 235 232 ."\n\t\t<p class='erklk'>'Gebäudefunktion' ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des Gebäudes'</p>" … … 241 238 if ($baw != "" OR $allefelder) { 242 239 echo "\n<tr>" 243 ."\n\t<td class='li'>Bauweise</td>" 244 ."\n\t<td class='fett'>"; 245 if ($showkey and $baw != '') {echo "<span class='key'>(".$baw.")</span> ";} 246 echo $bbauw."</td>" 247 ."\n\t<td>" 248 ."\n\t\t<p class='erklk'>'Bauweise' ist die Beschreibung der Art der Bauweise.</p>" 249 ."\n\t\t<p class='erkli'>".$dbauw."</p>" 250 ."\n\t</td>" 251 ."\n</tr>"; 240 ."\n\t<td class='li'>Bauweise</td>" 241 ."\n\t<td class='fett'>".DsKy($baw, 'Bauweise-*').$bbauw."</td>" 242 ."\n\t<td>" 243 ."\n\t\t<p class='erklk'>'Bauweise' ist die Beschreibung der Art der Bauweise.</p>" 244 ."\n\t\t<p class='erkli'>".$dbauw."</p>" 245 ."\n\t</td>\n</tr>"; 252 246 } 253 247 … … 255 249 if ($aog != "" OR $allefelder) { 256 250 echo "\n<tr>" 257 ."\n\t<td class='li'>Geschosse</td>" 258 ."\n\t<td class='fett'>".$aog."</td>" 259 ."\n\t<td>" 260 ."\n\t\t<p class='erklk'>Anzahl oberirdischer Geschosse.</p>" 261 ."\n\t</td>" 262 ."\n</tr>"; 251 ."\n\t<td class='li'>Geschosse</td>" 252 ."\n\t<td class='fett'>".$aog."</td>" 253 ."\n\t<td>" 254 ."\n\t\t<p class='erklk'>Anzahl oberirdischer Geschosse.</p>" 255 ."\n\t</td>\n</tr>"; 263 256 } 264 257 … … 266 259 if ($aug != "" OR $allefelder) { 267 260 echo "\n<tr>" 268 ."\n\t<td class='li'>U-Geschosse</td>" 269 . "\n\t<td class='fett'>".$aug."</td>" 270 ."\n\t<td>" 271 ."\n\t\t<p class='erklk'>Anzahl unterirdischer Geschosse.</p>" 272 ."\n\t</td>" 273 ."\n</tr>"; 261 ."\n\t<td class='li'>U-Geschosse</td>" 262 . "\n\t<td class='fett'>".$aug."</td>" 263 ."\n\t<td>" 264 ."\n\t\t<p class='erklk'>Anzahl unterirdischer Geschosse.</p>" 265 ."\n\t</td>\n</tr>"; 274 266 } 275 267 … … 277 269 if ($hoh != "" OR $allefelder) { 278 270 echo "\n<tr>" 279 ."\n\t<td class='li'>Hochhaus</td>" 280 ."\n\t<td class='fett'>".$hoh."</td>" 281 ."\n\t<td>" 282 ."\n\t\t<p class='erklk'>'Hochhaus' ist ein Gebäude, das nach Gebäudehöhe und Ausprägung als Hochhaus zu bezeichnen ist. Für Gebäude im Geschossbau gilt dieses i.d.R. ab 8 oberirdischen Geschossen, für andere Gebäude ab einer Gebäudehöhe von 22 m." 283 ."\n\t</td>" 284 ."\n</tr>"; 271 ."\n\t<td class='li'>Hochhaus</td>" 272 ."\n\t<td class='fett'>".$hoh."</td>" 273 ."\n\t<td>" 274 ."\n\t\t<p class='erklk'>'Hochhaus' ist ein Gebäude, das nach Gebäudehöhe und Ausprägung als Hochhaus zu bezeichnen ist. Für Gebäude im Geschossbau gilt dieses i.d.R. ab 8 oberirdischen Geschossen, für andere Gebäude ab einer Gebäudehöhe von 22 m." 275 ."\n\t</td>\n</tr>"; 285 276 } 286 277 … … 288 279 if ($ofl != "" OR $allefelder) { 289 280 echo "\n<tr>" 290 ."\n\t<td class='li'>Lage zur Erdoberfläche</td>" 291 ."\n\t<td class='fett'>"; 292 if ($showkey and $ofl != '') {echo "<span class='key'>(".$ofl.")</span> ";} 293 echo $oflv."</td>" 294 ."\n\t<td>" 295 ."\n\t\t<p class='erklk'>'Lage zur Erdoberfläche' ist die Angabe der relativen Lage des Gebäudes zur Erdoberfläche. Diese Attributart wird nur bei nicht ebenerdigen Gebäuden geführt.<br>" 296 ."\n\t\t<p class='erkli'>".$ofld."</p>" 297 ."\n\t</td>" 298 ."\n</tr>"; 281 ."\n\t<td class='li'>Lage zur Erdoberfläche</td>" 282 ."\n\t<td class='fett'>".DsKy($ofl, '* für Lage zur Erdoberfläche').$oflv."</td>" 283 ."\n\t<td>" 284 ."\n\t\t<p class='erklk'>'Lage zur Erdoberfläche' ist die Angabe der relativen Lage des Gebäudes zur Erdoberfläche. Diese Attributart wird nur bei nicht ebenerdigen Gebäuden geführt.<br>" 285 ."\n\t\t<p class='erkli'>".$ofld."</p>" 286 ."\n\t</td>\n</tr>"; 299 287 } 300 288 … … 302 290 if ($dga != "" OR $allefelder) { 303 291 echo "\n<tr>" 304 ."\n\t<td class='li'>Dachgeschossausbau</td>" 305 ."\n\t<td class='fett'>"; 306 if ($showkey and $dga != '') {echo "<span class='key'>(".$dga.")</span> ";} 307 echo $dgav."</td>" 308 ."\n\t<td>" 309 ."\n\t\t<p class='erklk'>'Dachgeschossausbau' ist ein Hinweis auf den Ausbau bzw. die Ausbaufähigkeit des Dachgeschosses." 310 ."\n\t</td>" 311 ."\n</tr>"; 292 ."\n\t<td class='li'>Dachgeschossausbau</td>" 293 ."\n\t<td class='fett'>".DsKy($dga, '* Dachgeschossausbau').$dgav."</td>" 294 ."\n\t<td>" 295 ."\n\t\t<p class='erklk'>'Dachgeschossausbau' ist ein Hinweis auf den Ausbau bzw. die Ausbaufähigkeit des Dachgeschosses." 296 ."\n\t</td>\n</tr>"; 312 297 } 313 298 … … 315 300 if ($zus != "" OR $allefelder) { 316 301 echo "\n<tr>" 317 ."\n\t<td class='li'>Zustand</td>" 318 ."\n\t<td class='fett'>"; 319 if ($showkey and $zus != '') {echo "<span class='key'>(".$zus.")</span> ";} 320 echo $zusv."</td>" 321 ."\n\t<td>" 322 ."\n\t\t<p class='erklk'>'Zustand' beschreibt die Beschaffenheit oder die Betriebsbereitschaft von 'Gebäude'. Diese Attributart wird nur dann optional geführt, wenn der Zustand des Gebäudes vom nutzungsfähigen Zustand abweicht.</p>" 323 ."\n\t\t<p class='erkli'>".$zusd."</p>" 324 ."\n\t</td>" 325 ."\n</tr>"; 302 ."\n\t<td class='li'>Zustand</td>" 303 ."\n\t<td class='fett'>"; 304 echo DsKy($zus, 'Zustand-*').$zusv."</td>" 305 ."\n\t<td>" 306 ."\n\t\t<p class='erklk'>'Zustand' beschreibt die Beschaffenheit oder die Betriebsbereitschaft von 'Gebäude'. Diese Attributart wird nur dann optional geführt, wenn der Zustand des Gebäudes vom nutzungsfähigen Zustand abweicht.</p>" 307 ."\n\t\t<p class='erkli'>".$zusd."</p>" 308 ."\n\t</td>\n</tr>"; 326 309 } 327 310 328 311 // Weitere GebÀudefunktionen 329 // Suche Testfall: SELECT gml_id, gebaeudefunktion, weiteregebaeudefunktion FROM ax_gebaeude WHERE (NOT weiteregebaeudefunktion IS NULL) AND cardinality(weiteregebaeudefunktion) > 1 liMIT 10;330 312 if ($wgf != "" OR $allefelder) { // ... ist ein Array 331 313 echo "\n<tr>" 332 ."\n\t<td class='li'>Weitere Gebäudefunktionen</td>" 333 ."\n\t<td>"; 334 if ($wgf != "") { // Kommagetrennte Liste aus Array 335 $sqlw="SELECT wert, beschreibung, dokumentation FROM ax_gebaeudefunktion WHERE wert IN ( $1 ) ORDER BY wert;"; 336 $v = array($wgf); 337 $resw = pg_prepare("", $sqlw); 338 $resw = pg_execute("", $v); 339 if (!$resw) { 340 echo "\n<p class='err'>Fehler bei Gebäude - weitere Funktion.</p>"; 341 if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".$sqlw."<br>$1 = Werteliste = '".$wgf."'</p>";} 342 } 343 $zw=0; 344 while($roww = pg_fetch_assoc($resw)) { // LOOP Funktion 345 if ($zw > 0) {echo "<br>";} 346 if ($showkey and $roww["wert"] != '') {echo "<span class='key'>(".$roww["wert"].")</span> ";} 347 echo "<span title='".$roww["dokumentation"]."'>".$roww["beschreibung"]."</span>"; 348 $zw++; 349 } 350 pg_free_result($resw); 314 ."\n\t<td class='li'>Weitere Gebäudefunktionen</td>" 315 ."\n\t<td>"; 316 if ($wgf != "") { // Kommagetrennte Liste aus Array 317 $sqlw="SELECT wert, beschreibung, dokumentation FROM ax_gebaeudefunktion WHERE wert IN ( $1 ) ORDER BY wert;"; 318 $v = array($wgf); 319 $resw = pg_prepare("", $sqlw); 320 $resw = pg_execute("", $v); 321 if (!$resw) { 322 echo "\n<p class='err'>Fehler bei Gebäude - weitere Funktion.</p>"; 323 if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".$sqlw."<br>$1 = Werteliste = '".$wgf."'</p>";} 351 324 } 352 echo "</td>" 353 ."\n\t<td>" 354 ."\n\t\t<p class='erklk'>'Weitere Gebäudefunktion' ist die Funktion, die ein Gebäude neben der dominierenden Gebäudefunktion hat." 355 ."\n\t</td>" 356 ."\n</tr>"; 325 $zw=0; 326 while($roww = pg_fetch_assoc($resw)) { // LOOP Funktion 327 if ($zw > 0) {echo "<br>";} 328 echo DsKy($roww["wert"], 'Gebäudefunktionen-*')."<span title='".$roww["dokumentation"]."'>".$roww["beschreibung"]."</span>"; 329 $zw++; 330 } 331 pg_free_result($resw); 332 } 333 echo "</td>" 334 ."\n\t<td>" 335 ."\n\t\t<p class='erklk'>'Weitere Gebäudefunktion' ist die Funktion, die ein Gebäude neben der dominierenden Gebäudefunktion hat." 336 ."\n\t</td>\n</tr>"; 357 337 } 358 338 … … 360 340 if ($daf != "" OR $allefelder) { 361 341 echo "\n<tr>" 362 ."\n\t<td class='li'>Dachform</td>" 363 ."\n\t<td class='fett'>"; 364 if ($showkey and $daf != '') {echo "<span class='key'>(".$daf.")</span> ";} 365 echo $dach."</td>" 366 ."\n\t<td>" 367 ."\n\t\t<p class='erklk'>'Dachform' beschreibt die charakteristische Form des Daches." 368 ."\n\t</td>" 369 ."\n</tr>"; 342 ."\n\t<td class='li'>Dachform</td>" 343 ."\n\t<td class='fett'>".DsKy($daf, 'Dachform-*').$dach."</td>" 344 ."\n\t<td>" 345 ."\n\t\t<p class='erklk'>'Dachform' beschreibt die charakteristische Form des Daches." 346 ."\n\t</td>\n</tr>"; 370 347 } 371 348 … … 373 350 if ($hho != "" OR $allefelder) { 374 351 echo "\n<tr>" 375 ."\n\t<td class='li'>Objekthöhe</td>" 376 ."\n\t<td class='fett'>".$hho."</td>" 377 ."\n\t<td>" 378 ."\n\t\t<p class='erklk'>'Objekthöhe' ist die Höhendifferenz in [m] zwischen dem höchsten Punkt der Dachkonstruktion und der festgelegten Geländeoberfläche des Gebäudes." 379 ."\n\t</td>" 380 ."\n</tr>"; 352 ."\n\t<td class='li'>Objekthöhe</td>" 353 ."\n\t<td class='fett'>".$hho."</td>" 354 ."\n\t<td>" 355 ."\n\t\t<p class='erklk'>'Objekthöhe' ist die Höhendifferenz in [m] zwischen dem höchsten Punkt der Dachkonstruktion und der festgelegten Geländeoberfläche des Gebäudes." 356 ."\n\t</td>\n</tr>"; 381 357 } 382 358 … … 384 360 if ($gfl != "" OR $allefelder) { 385 361 echo "\n<tr>" 386 ."\n\t<td class='li'>Geschossfläche</td>" 387 ."\n\t<td class='fett'>"; 388 if ($gfl != "") {echo $gfl." m²";} 389 echo "</td>" 390 ."\n\t<td>" 391 ."\n\t\t<p class='erklk'>'Geschossfläche' ist die Gebäudegeschossfläche in [qm]." 392 ."\n\t</td>" 393 ."\n</tr>"; 362 ."\n\t<td class='li'>Geschossfläche</td>" 363 ."\n\t<td class='fett'>"; 364 if ($gfl != "") {echo $gfl." m²";} 365 echo "</td>" 366 ."\n\t<td>" 367 ."\n\t\t<p class='erklk'>'Geschossfläche' ist die Gebäudegeschossfläche in [qm]." 368 ."\n\t</td>\n</tr>"; 394 369 } 395 370 … … 397 372 if ($grf != "" OR $allefelder) { 398 373 echo "\n<tr>" 399 ."\n\t<td class='li'>Grundfläche</td>" 400 ."\n\t<td class='fett'>"; 401 if ($grf != "") {echo $grf." m²";} 402 echo "\n\t<td>" 403 ."\n\t\t<p class='erklk'>'Grundfläche' ist die Gebäudegrundfläche in [qm]." 404 ."\n\t</td>" 405 ."\n</tr>"; 374 ."\n\t<td class='li'>Grundfläche</td>" 375 ."\n\t<td class='fett'>"; 376 if ($grf != "") {echo $grf." m²";} 377 echo "\n\t<td>" 378 ."\n\t\t<p class='erklk'>'Grundfläche' ist die Gebäudegrundfläche in [qm]." 379 ."\n\t</td>\n</tr>"; 406 380 } 407 381 … … 409 383 if ($ura != "" OR $allefelder) { 410 384 echo "\n<tr>" 411 ."\n\t<td class='li'>Umbauter Raum</td>" 412 ."\n\t<td class='fett'>".$ura."</td>" 413 ."\n\t<td>" 414 ."\n\t\t<p class='erklk'>'Umbauter Raum' ist der umbaute Raum [Kubikmeter] des Gebäudes." 415 ."\n\t</td>" 416 ."\n</tr>"; 385 ."\n\t<td class='li'>Umbauter Raum</td>" 386 ."\n\t<td class='fett'>".$ura."</td>" 387 ."\n\t<td>" 388 ."\n\t\t<p class='erklk'>'Umbauter Raum' ist der umbaute Raum [Kubikmeter] des Gebäudes." 389 ."\n\t</td>\n</tr>"; 417 390 } 418 391 … … 420 393 if ($bja != "" OR $allefelder) { 421 394 echo "\n<tr>" 422 ."\n\t<td class='li'>Baujahr</td>" 423 ."\n\t<td class='fett'>".$bja."</td>" 424 ."\n\t<td>" 425 ."\n\t\t<p class='erklk'>'Baujahr' ist das Jahr der Fertigstellung oder der baulichen Veränderung des Gebäudes." 426 ."\n\t</td>" 427 ."\n</tr>"; 395 ."\n\t<td class='li'>Baujahr</td>" 396 ."\n\t<td class='fett'>".$bja."</td>" 397 ."\n\t<td>" 398 ."\n\t\t<p class='erklk'>'Baujahr' ist das Jahr der Fertigstellung oder der baulichen Veränderung des Gebäudes." 399 ."\n\t</td>\n</tr>"; 428 400 } 429 401 … … 431 403 if ($daa != "" OR $allefelder) { 432 404 echo "\n<tr>" 433 ."\n\t<td class='li'>Dachart</td>" 434 ."\n\t<td class='fett'>".$daa."</td>" 435 ."\n\t<td>" 436 ."\n\t\t<p class='erklk'>'Dachart' gibt die Art der Dacheindeckung (z.B. Reetdach) an." 437 ."\n\t</td>" 438 ."\n</tr>"; 405 ."\n\t<td class='li'>Dachart</td>" 406 ."\n\t<td class='fett'>".$daa."</td>" 407 ."\n\t<td>" 408 ."\n\t\t<p class='erklk'>'Dachart' gibt die Art der Dacheindeckung (z.B. Reetdach) an." 409 ."\n\t</td>\n</tr>"; 439 410 } 440 411 … … 461 432 if ($erheb != "" OR $allefelder) { 462 433 echo "\n<tr>" 463 ."\n\t<td class='li'>Datenerhebung</td>" 464 ."\n\t<td class='fett'>"; 465 if ($showkey) {echo "<span class='key'>(".$erheb.")</span> ";} 466 echo $berheb."</td>" 467 ."\n\t<td>" 468 ."\n\t\t<p class='erklk'>'Datenerhebung' beschreibt Qualitätsangaben, Herkunft.</p>" 469 ."\n\t\t<p class='erkli'>".$derheb."</p>" 470 ."</td>" 471 ."\n</tr>"; 434 ."\n\t<td class='li'>Datenerhebung</td>" 435 ."\n\t<td class='fett'>".DsKy($erheb, 'Datenerhebung-*').$berheb."</td>" 436 ."\n\t<td>" 437 ."\n\t\t<p class='erklk'>'Datenerhebung' beschreibt Qualitätsangaben, Herkunft.</p>" 438 ."\n\t\t<p class='erkli'>".$derheb."</p>" 439 ."</td>\n</tr>"; 472 440 } 473 441 } … … 515 483 516 484 // 3 FÀlle: 517 if ($drin === "t") { // Geb Àude liegt komplett in FlurstÃŒck485 if ($drin === "t") { // Geb. komplett in FS 518 486 $gstyle="gin"; // siehe .css 519 487 $f1=number_format($schni,2,",",".") . " m²"; … … 524 492 $f1=" "; 525 493 $f2="angrenzend"; 526 } else { // Teile des Geb Àudes stehen auf dem FlurstÃŒck494 } else { // Teile des Geb. auf dem FS 527 495 $gstyle="gtl"; 528 496 $f1=number_format($schni,2,",",".") . " m²"; … … 532 500 echo "\n<tr>" 533 501 ."\n\t<td class='fla'>".$f1."</td>" 534 ."\n\t<td class='".$gstyle."'>".$f2."</td>"; 535 echo "\n\t<td>"; 536 if ($showkey) {echo "<span class='key'>(".$rowf["gemarkungsnummer"].")</span> ";} 537 echo $rowf["bezeichnung"]."</td>" 538 ."\n\t<td>".$flur."</td>" 539 ."\n\t<td class='fsnr'><span class='wichtig'>".$fskenn."</span></td>"; 502 ."\n\t<td class='".$gstyle."'>".$f2."</td>" 503 ."\n\t<td>".DsKy($rowf["gemarkungsnummer"], 'Gemarkungsnummer').$rowf["bezeichnung"]."</td>" 504 ."\n\t<td>".$flur."</td>" 505 ."\n\t<td class='fsnr'><span class='wichtig'>".$fskenn."</span></td>"; 540 506 541 507 echo "\n\t<td class='nwlink noprint'>" // Link FS 542 ."\n\t\t<a title='Flurstück' href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$fgml; 543 if ($showkey) {echo "&showkey=j";} 544 echo "'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>" 508 ."\n\t\t<a title='Flurstück' href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$fgml.LnkStf() 509 ."'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>" 545 510 ."\n\t</td>" 546 511 ."\n</tr>"; … … 549 514 $gfla=number_format($gfla,2,",",".") . " m²"; 550 515 echo "\n<tr>\n\t<td class='fla sum'>".$gfla."</td>\n\t<td>Gebäudefläche</td>\n\t<td></td>\n</tr>"; 551 echo "\n</table>"; // Ende FlurstÃŒcke516 echo "\n</table>"; 552 517 553 518 echo "<div class='buttonbereich noprint'>\n<hr>" -
trunk/info/info/alkisn/alkisinlayausk.php
r425 r427 2 2 /* alkisinlayausk.php 3 3 4 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 5 Dies Programm wird in einen iFrame im Mapserver-Template (FeatureInfo) geladen. 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 7 Dies Programm wird in einen iFrame im Mapserver-Template der FeatureInfo geladen. 6 8 Parameter: &gkz, &gml_id 7 Dies Programm gibt einen kurzen Ueberblick zum Flurstueck, z.B. Eigentuemer ohne Adresse.9 Dies Programm gibt einen kurzen Ãberblick zum FlurstÃŒck, z.B. EigentÃŒmer ohne Adresse. 8 10 FÃŒr detaillierte Angaben wird zum GB- oder FS-Nachweis verlinkt. 9 Dies ist eine Variante von alkisausk.php welches als vollst aendige Seite aufgerufen wird.11 Dies ist eine Variante von alkisausk.php welches als vollstÀndige Seite aufgerufen wird. 10 12 11 13 Version: 12 2016-02-24 Version f uer norGIS-ALKIS-Import14 2016-02-24 Version fÃŒr norGIS-ALKIS-Import 13 15 .... 14 16 2020-02-03 Fenster-Weite … … 59 61 60 62 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 61 $dbg=$debug; // CONF in Arbeits-Variable63 $dbg=$debug; 62 64 63 65 // Body des Inlay muss in Mapbender-Feature-Info-PopUp passen. Kleiner als 750 aus css. … … 65 67 if (!$con) {echo "<br>Fehler beim Verbinden der DB.\n<br>";} 66 68 67 // *** F L U R S T U E C K ***69 // F L U R S T à C K 68 70 $sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung, f.gemeindezugehoerigkeit_regierungsbezirk, f.gemeindezugehoerigkeit_kreis, f.gemeindezugehoerigkeit_gemeinde, f.istgebucht 69 71 FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer ".UnqKatAmt("f","g") … … 208 210 while($row = pg_fetch_assoc($res)) { 209 211 $sname=htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8"); // Str.-Name 210 211 if (substr($sname, strlen($sname) -3, 3) === 'weg') { // Versuch fuer korrekten Satzbau 212 if (substr($sname, strlen($sname) -3, 3) === 'weg') { // Versuch fÃŒr korrekten Satzbau 212 213 $slink=" am ".$sname; 213 214 } else { … … 255 256 if ($gml_buchungsstelle == '') {echo "\n<p class='err'>Keine Buchungstelle zum Flurstück gefunden.</p>";} 256 257 echo "\n\n<table class='outer'>"; 257 $gezeigt=buchung_anzg($gml_buchungsstelle, 'j', true, "", 1); // direkte Buchung anzeigen wenn nicht fiktiv, Eigent. ja, mit JS "imFenster"258 $gezeigt=buchung_anzg($gml_buchungsstelle, 'j', true, "", 1); // direkte Buchung anzeigen 258 259 $anzber=ber_bs_zaehl($gml_buchungsstelle); // Ber. Buchg., nur Anzahl 259 260 if ($anzber > 0 ) { -
trunk/info/info/alkisn/alkisinlaybaurecht.php
r425 r427 1 1 <?php 2 /* alkisinlaybaurecht.php - Inlay fuer Template: Baurecht 3 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 2 /* alkisinlaybaurecht.php 3 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 7 Inlay fÃŒr Template: Baurecht 4 8 Ãhnlich alkisbaurecht, aber nur Basisdaten, kein Footer und keine FlurstÃŒcks-Verschneidung. 5 9 … … 51 55 52 56 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 53 $dbg=$debug; // CONF in Arbeits-Variable57 $dbg=$debug; 54 58 55 59 // Body des Inlay muss in Mapbender-Feature-Info-PopUp passen. Kleiner als 750 aus css. -
trunk/info/info/alkisn/alkislage.php
r425 r427 2 2 /* alkislage.php 3 3 4 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 5 7 Kann die 3 Arten von Lagebezeichnung anzeigen und verbundene Objekte verlinken 6 8 … … 13 15 2021-12-09 Neue Parameter: $katAmtMix (Kataster-Amt-Mix), $PrntBtn (Drucken-SchaltflÀche) 14 16 Gemarkung und Flur bei Gruppenwechsel FETT anzeigen 15 16 ToDo: 17 2022-01-12 Neue Functions LnkStf(), DsKy() 18 19 ToDo: 17 20 - Balken-Kennzeichen kompatibel machen mit der Eingabe der Navigation fÃŒr Adresse 18 21 - das Modul "alkisgebaeudenw" (alle Geb. auf einem FS) verschneidet die FlÀchen und findet damit auch 19 Grenz- Uberbauungen und angrenzende GebÀude. Diese fehlen hier, weil nur VerknÃŒpfungen verarbeitet werden.22 Grenz-Ãberbauungen und angrenzende GebÀude. Diese fehlen hier, weil nur VerknÃŒpfungen verarbeitet werden. 20 23 Mit FlÀchen-Verschneidung auch weitere FS anzeigen? 21 24 */ … … 45 48 46 49 switch ($ltyp) { 47 case "m": // "Mit HsNr" = Hauptgeb aeude50 case "m": // "Mit HsNr" = HauptgebÀude 48 51 $tnam = "ax_lagebezeichnungmithausnummer"; break; 49 case "p": // "mit PseudoNr" = Nebengeb aeude50 $tnam = "ax_lagebezeichnungmitpseudonummer"; 51 case "o": //"Ohne HsNr" = Gewanne oder Stra sse52 case "p": // "mit PseudoNr" = NebengebÀude 53 $tnam = "ax_lagebezeichnungmitpseudonummer"; break; 54 case "o": //"Ohne HsNr" = Gewanne oder StraÃe 52 55 $tnam = "ax_lagebezeichnungohnehausnummer"; break; 53 56 default: … … 69 72 70 73 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 71 $dbg=$debug; // CONF in Arbeits-Variable 72 73 // Mit URL-Parameter "&nodebug=j" kann man die Entwicklungsumgebung (in Conf definiert) ausschalten. 74 // Wirkt temporÀr und wird nicht in Links weiter gereicht. 74 $dbg=$debug; 75 75 if ($nodebug === "j") {$dbg=0;} 76 76 … … 173 173 echo "\n<h2>Lagebezeichnung</h2>\n<p>Typ: ".$untertitel."</p>"; 174 174 echo "\n<table class='outer'>\n<tr>\n\t<td>"; // Tab. Kennz. 175 // ToDo: kleiner, wenn ltyp=0 und die Schl uesselfelder leer sind175 // ToDo: kleiner, wenn ltyp=0 und die SchlÃŒsselfelder leer sind 176 176 echo "\n\t\t<table class='kennzla' title='Lage'>" 177 177 ."\n\t\t<tr>"; … … 199 199 echo "\n\t\t</tr>\n\t\t<tr>"; 200 200 if ($osub != "g") { // nicht bei Gewanne 201 202 echo "\n\t\t\t<td title='Bundesland'>"; 203 if ($showkey) {echo "<span class='key'>".$land."</span><br>";} 204 echo $bnam." </td>"; 205 206 echo "\n\t\t\t<td title='Regierungsbezirk'>"; 207 if ($showkey) {echo "<span class='key'>".$regbez."</span><br>";} 208 echo $rnam." </td>"; 209 210 echo "\n\t\t\t<td title='Kreis'>"; 211 if ($showkey and $osub != "g") {echo "<span class='key'>".$kreis."</span><br>";} 212 echo $knam." </td>"; 213 214 echo "\n\t\t\t<td title='Gemeinde'>"; 215 if ($showkey and $osub != "g") {echo "<span class='key'>".$gem."</span><br>";} 216 echo $gnam." </td>"; 217 218 echo "\n\t\t\t<td title='Straße'>"; 219 if ($showkey and $osub != "g") {echo "<span class='key'>".$lage."</span><br>";} 201 echo "\n\t\t\t<td title='Bundesland'>".DsKy($land, 'Bundesland-*').$bnam." </td>" 202 ."\n\t\t\t<td title='Regierungsbezirk'>".DsKy($regbez, 'Regierungsbezirk-*').$rnam." </td>" 203 ."\n\t\t\t<td title='Kreis'>".DsKy($kreis, 'Kreis-*').$knam." </td>" 204 ."\n\t\t\t<td title='Gemeinde'>".DsKy($gem, 'Gemeinde-*').$gnam." </td>" 205 ."\n\t\t\t<td title='Straße'>".DsKy($lage, 'Straßen-*'); 220 206 if ($ltyp === "o") { 221 207 echo "<span class='wichtig'>".$snam."</span>"; … … 248 234 if ($osub != "g") { // Link zu Strasse 249 235 echo "\n\t\t<p class='nwlink noprint'>" 250 ."\n\t\t\t<a href='alkisstrasse.php?gkz=".$gkz."&gmlid=".$strgml; 251 if ($showkey) {echo "&showkey=j";} 252 echo "' title='Straße'>Straße <img src='ico/Strassen.png' width='16' height='16' alt=''></a>" 236 ."\n\t\t\t<a href='alkisstrasse.php?gkz=".$gkz."&gmlid=".$strgml.LnkStf() 237 ."' title='Straße'>Straße <img src='ico/Strassen.png' width='16' height='16' alt=''></a>" 253 238 ."\n\t\t</p>"; 254 239 } 255 240 256 241 echo "\n\t</td>\n</tr>\n</table>"; 257 // Ende Seitenkopf 258 259 // F L U R S T U E C K E 242 243 // F L U R S T à C K E 260 244 // ax_Flurstueck >weistAuf> ax_LagebezeichnungMitHausnummer 261 245 // ax_Flurstueck >zeigtAuf> ax_LagebezeichnungOhneHausnummer … … 304 288 305 289 echo "\n<tr class='".$trclass."'>" 306 ."\n\t<td>"; 307 if ($showkey) {echo "<span class='key'>".$rowf["gemarkungsnummer"]."</span> ";} 290 ."\n\t<td>".DsKy($rowf["gemarkungsnummer"], 'Gemarkungsnummer'); 308 291 if ($gwgmkg != $gmkg) { 309 292 echo "<b>".$gmkg."</b></td>"; … … 322 305 ."\n\t<td class='fla'>".$flae."</td>" 323 306 ."\n\t<td>\n\t\t<p class='nwlink noprint'>" 324 ."\n\t\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n"; 325 if ($showkey) {echo "&showkey=j";} 326 echo "' title='Flurstücksnachweis'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>" 307 ."\n\t\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"].LnkStf()."&eig=n" 308 ."' title='Flurstücksnachweis'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>" 327 309 ."\n\t\t</p>\n\t</td>" 328 310 ."\n</tr>"; … … 339 321 ."\n<p>Andere Lagebezeichnungen zur gleichen Hausnummer.</p>"; 340 322 $whereclaus="WHERE land= $1 AND regierungsbezirk= $2 AND kreis= $3 AND gemeinde= $4 AND lage= $5 "; 341 342 $url=selbstverlinkung()."?gkz=".$gkz; // Basis 343 if ($showkey) {$url.="&showkey=j";} 344 $url.="&gmlid="; 323 $url=selbstverlinkung()."?gkz=".$gkz.LnkStf()."&gmlid="; // Basis 345 324 346 325 switch ($ltyp) { … … 360 339 $neb=0; 361 340 while($row = pg_fetch_assoc($res)) { 362 echo "\n\t<a href='".$url.$row["gml_id"]. "&ltyp=p'>lfd.-Nr ".$row["laufendenummer"]."</a> ";341 echo "\n\t<a href='".$url.$row["gml_id"].LnkStf()."&ltyp=p'>lfd.-Nr ".$row["laufendenummer"]."</a> "; 363 342 $neb++; 364 343 } … … 378 357 $hg=0; 379 358 while($row = pg_fetch_assoc($res)) { 380 echo "\n\t<a href='".$url.$row["gml_id"]. "&ltyp=m'>Haus-Nr ".$pseu."</a> ";359 echo "\n\t<a href='".$url.$row["gml_id"].LnkStf()."&ltyp=m'>Haus-Nr ".$pseu."</a> "; 381 360 $hg++; 382 361 } … … 396 375 $neb=0; 397 376 while($row = pg_fetch_assoc($res)) { 398 echo "\n\t<a href='".$url.$row["gml_id"]. "&ltyp=p'>lfd.-Nr ".$row["laufendenummer"]."</a> ";377 echo "\n\t<a href='".$url.$row["gml_id"].LnkStf()."&ltyp=p'>lfd.-Nr ".$row["laufendenummer"]."</a> "; 399 378 $neb++; 400 379 } … … 405 384 } 406 385 407 // G E B A EU D E386 // G E B à U D E 408 387 if ($ltyp != "o") { // OhneHsNr linkt nur Flurst. 409 388 echo "\n\n<a id='geb'></a>\n<h3><img src='ico/Haus.png' width='16' height='16' alt=''> Gebäude</h3>" … … 444 423 $gfla=$row["flaeche"]; 445 424 echo "\n<tr>" 446 ."\n\t<td>".$row["name"]."</td>" 447 ."\n\t<td class='fla'>".$gfla." m²</td>"; 448 449 echo "\n\t<td title='".htmlentities($row["ud"], ENT_QUOTES, "UTF-8")."'>"; 450 if ($showkey) {echo "<span class='key'>".htmlentities($row["gebaeudefunktion"], ENT_QUOTES, "UTF-8")."</span> ";} 451 echo $row["uv"]."</td>"; 452 453 echo "\n\t<td title='".htmlentities($row["hd"], ENT_QUOTES, "UTF-8")."'>"; 454 if ($showkey) {echo "<span class='key'>".htmlentities($row["bauweise"], ENT_QUOTES, "UTF-8")."</span> ";} 455 echo $row["hv"]."</td>"; 456 457 echo "\n\t<td title='".htmlentities($row["zd"] , ENT_QUOTES, "UTF-8")."'>"; 458 if ($showkey) {echo "<span class='key'>".htmlentities($row["zustand"], ENT_QUOTES, "UTF-8")."</span> ";} 459 echo $row["zv"]."</td>"; 460 461 echo "\n\t<td class='nwlink noprint'>" 462 ."\n\t\t<a title='komplette Hausdaten' href='alkishaus.php?gkz=".$gkz."&gmlid=".$ggml; 463 if ($showkey) {echo "&showkey=j";} 464 echo "'>Haus <img src='ico/Haus.png' width='16' height='16' alt=''></a>" 465 ."\n\t</td>" 466 ."\n</tr>"; 425 ."\n\t<td>".$row["name"]."</td>" 426 ."\n\t<td class='fla'>".$gfla." m²</td>" 427 ."\n\t<td title='".htmlentities($row["ud"], ENT_QUOTES, "UTF-8")."'>".DsKy($row["gebaeudefunktion"], 'Gebäudefunktion-*').$row["uv"]."</td>" 428 ."\n\t<td title='".htmlentities($row["hd"], ENT_QUOTES, "UTF-8")."'>".DsKy($row["bauweise"], 'Bauweise-*').$row["hv"]."</td>" 429 ."\n\t<td title='".htmlentities($row["zd"], ENT_QUOTES, "UTF-8")."'>".DsKy($row["zustand"], 'Zustand-*').$row["zv"]."</td>" 430 ."\n\t<td class='nwlink noprint'>" 431 ."\n\t\t<a title='komplette Hausdaten' href='alkishaus.php?gkz=".$gkz."&gmlid=".$ggml.LnkStf() 432 ."'>Haus <img src='ico/Haus.png' width='16' height='16' alt=''></a>" 433 ."\n\t</td>\n</tr>"; 467 434 } 468 435 echo "\n</table>"; -
trunk/info/info/alkisn/alkisnamstruk.php
r425 r427 1 1 <?php 2 /* Modul: alkisnamstruk.php 3 4 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 5 Namens- und Adressdaten fuer einen Eigentuemer aus ALKIS PostNAS 2 /* alkisnamstruk.php 3 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 7 Namens- und Adressdaten fÃŒr einen EigentÃŒmer aus ALKIS PostNAS 6 8 7 9 Version: … … 12 14 2020-12-15 Input-Validation und Strict Comparisation (===) 13 15 2021-12-09 Neue Parameter: $katAmtMix (Kataster-Amt-Mix), $PrntBtn (Drucken-SchaltflÀche). Gruppenwechsel Bezirk. 16 2022-01-13 Neue Functions LnkStf(), DsKy() 14 17 */ 15 18 ini_set("session.cookie_httponly", 1); … … 54 57 <?php 55 58 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 56 $dbg=$debug; // CONF in Arbeits-Variable 57 58 // Mit URL-Parameter "&nodebug=j" kann man die Entwicklungsumgebung (in Conf definiert) ausschalten. 59 // Wirkt temporÀr und wird nicht in Links weiter gereicht. 59 $dbg=$debug; 60 60 if ($nodebug === "j") {$dbg=0;} 61 61 62 echo "<p class='balken nakennz'>ALKIS Name id=".$gmlid." </p>\n" // Balken62 echo "<p class='balken nakennz'>ALKIS Name id=".$gmlid." </p>\n" 63 63 ."\n<h2><img src='ico/Eigentuemer.png' width='16' height='16' alt=''> Person</h2>"; 64 64 $con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisnamstruk.php'"); … … 94 94 95 95 echo "<table>" 96 ."\n\t<tr><td class='nhd'>Anrede:</td><td class='nam'>"; 97 if ($showkey) {echo "<span class='key' title='Anredekennung'>(".$anrk.")</span> ";} 98 echo $anr."</td></tr>" 96 ."\n\t<tr><td class='nhd'>Anrede:</td><td class='nam'>".DsKy($anrk, '* der Anrede-Kennung').$anr."</td></tr>" 99 97 ."\n\t<tr><td class='nhd'>Nachname oder Firma:</td><td class='nam'>".$nam."</td></tr>" 100 98 ."\n\t<tr><td class='nhd'>Vorname:</td><td class='nam'>".$vor." </td></tr>" … … 143 141 } 144 142 echo "\t<tr><td class='nhd'>Datum:</td><td class='nam'>".$datum."</td></tr>\n" 145 ."\t<tr><td class='nhd'>Anlass:</td><td class='nam'>"; 146 if ($showkey) {echo "<span class='key'>".$anlass."</span> ";} 147 echo $anltxt."</td></tr>\n"; 143 ."\t<tr><td class='nhd'>Anlass:</td><td class='nam'>".DsKy($anlass, 'Anlass-*').$anltxt."</td></tr>\n"; 148 144 } 149 145 echo "\t<tr><td class='nhd'>PLZ:</td><td class='nam'>".$plz."</td></tr>\n" … … 154 150 ."\n</table>\n<br>"; 155 151 156 // Name und Adresse Kompakt (im Rahmen) - Alles was man f uer ein Anschreiben braucht152 // Name und Adresse Kompakt (im Rahmen) - Alles was man fÃŒr ein Anschreiben braucht 157 153 echo "\n<img src='ico/Namen.png' width='16' height='16' alt='Brief' title='Anschrift'>" 158 154 ."\n<div class='adr' title='Anschrift'>\n\t".$anr." ".$aka." ".$vor." ".$nbest." ".$nam."<br>" … … 166 162 } elseif ($j > 1) { 167 163 echo "\n\t\t<p class='nwlink noprint'>" 168 ."\n\t\t\t<a href='".selbstverlinkung(). "?gkz=".$gkz."&gmlid=".$gmlid; 169 if ($showkey) {echo "&showkey=j";} 164 ."\n\t\t\t<a href='".selbstverlinkung(). "?gkz=".$gkz."&gmlid=".$gmlid.LnkStf(); 170 165 if ($multiadress === "j") { 171 166 echo "&multiadress=n' title='mehrfache Adressen unterdrücken'>erste Adresse "; … … 177 172 } 178 173 179 // *** G R U N D B U C H ***174 // G R U N D B U C H 180 175 echo "\n<hr>\n<h3><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Grundbücher</h3>"; 181 176 // person <benennt< namensnummer >istBestandteilVon> Buchungsblatt … … 224 219 $zpaar=!$zpaar; 225 220 echo "\n<tr class='".$trclass."'>" 226 ."\n\t<td>"; // GB-Bezirk <td class='gbl'> 227 if ($showkey) {echo "<span class='key'>".$rowg["bezirk"]."</span> ";} 228 if ($gwbeznam != $beznam){ 229 echo "<b>".$beznam."</b>"; 230 $gwbeznam=$beznam; 231 } else { 232 echo $beznam; 233 } 221 ."\n\t<td>".DsKy($rowg["bezirk"], 'Grundbuch-Bezirks-*'); 222 if ($gwbeznam != $beznam){ 223 echo "<b>".$beznam."</b>"; 224 $gwbeznam=$beznam; 225 } else { 226 echo $beznam; 227 } 234 228 echo "</td>"; 235 229 236 echo "\n\t<td>"; // Blattart 237 if ($showkey) {echo "<span class='key'>".$blattkey."</span> ";} 238 echo $blattart 239 ."</td>"; 240 241 echo "\n\t<td>"; // Blatt 242 echo "<span class='wichtig'>".$rowg["nr"]."</span>" 243 ."</td>"; 230 echo "\n\t<td>".DsKy($blattkey, 'Blattart-*').$blattart."</td>"; 231 echo "\n\t<td><span class='wichtig'>".$rowg["nr"]."</span></td>";// Blatt 244 232 245 233 echo "\n\t<td>"; // Namensnummer 246 247 248 249 250 234 if ($namnum == "") { 235 echo " "; 236 } else { 237 echo $namnum; 238 } 251 239 echo "</td>"; 252 240 253 241 echo "\n\t<td>"; // Anteil 254 255 256 257 258 242 if ($zae == '') { 243 echo " "; 244 } else { 245 echo $zae."/".$rowg["nenner"]." Anteil"; 246 } 259 247 echo "</td>" 260 248 ."\n\t<td>" 261 ."\n\t\t<p class='nwlink noprint'>" 262 ."\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gmlg; 263 if ($showkey) {echo "&showkey=j";} 264 echo "' title='Bestandsnachweis'>".$blattart 265 ."\n\t\t\t<img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>" 266 ."\n\t\t</p>" 249 ."\n\t\t<p class='nwlink noprint'>" 250 ."\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&gmlid=".$gmlg.LnkStf()."' title='Bestandsnachweis'>".$blattart 251 ."\n\t\t\t<img src='ico/GBBlatt_link.png' width='16' height='16' alt=''></a>" 252 ."\n\t\t</p>" 267 253 ."\n\t</td>" 268 254 ."\n</tr>"; -
trunk/info/info/alkisn/alkisstrasse.php
r425 r427 2 2 /* alkisstrasse.php 3 3 4 ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo). 4 ALKIS-Auskunft 5 Author: Frank JÀger, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo) 6 5 7 Alle FlurstÃŒcke an einer StraÃe anzeigen, egal ob "mit" oder "ohne" Hausnummer 6 8 Parameter: "gml_id" aus der Tabelle "ax_lagebezeichnungkatalogeintrag" … … 12 14 2020-12-15 Input-Validation und Strict Comparisation (===) 13 15 2021-12-09 Neue Parameter: $katAmtMix (Kataster-Amt-Mix), $PrntBtn (Drucken-SchaltflÀche) 16 2022-01-13 Neue Functions LnkStf(), DsKy() 14 17 */ 15 18 ini_set("session.cookie_httponly", 1); … … 54 57 $erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 55 58 $dbg=$debug; // CONF in Arbeits-Variable 56 57 // Mit URL-Parameter "&nodebug=j" kann man die Entwicklungsumgebung (in Conf definiert) ausschalten.58 // Wirkt temporÀr und wird nicht in Links weiter gereicht.59 59 if ($nodebug === "j") {$dbg=0;} 60 60 … … 87 87 } 88 88 if ($row = pg_fetch_assoc($res)) { 89 $lage=$row["lage"]; // Str assenschluessel90 $snam=$row["snam"]; // Str assenname89 $lage=$row["lage"]; // Str.schl. 90 $snam=$row["snam"]; // Str.name 91 91 $gem=$row["gemeinde"]; 92 $kennz=$gem."-".$lage." (".$snam.")"; // Schl uessel als Sucheingabe in NAV brauchbar?93 echo "\n<p class='balken strasse'>ALKIS Straße ".$kennz." </p>"; // Balken92 $kennz=$gem."-".$lage." (".$snam.")"; // SchlÃŒssel als Sucheingabe in NAV brauchbar? 93 echo "\n<p class='balken strasse'>ALKIS Straße ".$kennz." </p>"; 94 94 } else { 95 95 echo "\n<p class='err'>Kein Treffer bei Lagebezeichnungskatalogeintrag.</p>"; … … 108 108 ."\n\t\t\t<td class='head'>Kreis</td>" 109 109 ."\n\t\t\t<td class='head'>Gemeinde</td>" 110 ."\n\t\t <td class='head'>Straße</td>"110 ."\n\t\t\t<td class='head'>Straße</td>" 111 111 ."\n\t\t</tr>" 112 112 ."\n\t\t<tr>"; 113 echo "\n\t\t\t<td title='Bundesland'>"; 114 if ($showkey) {echo "<span class='key'>".$row["land"]."</span><br>";} 115 echo $row["bnam"]." </td>" 116 ."\n\t\t\t<td title='Regierungsbezirk'>"; 117 if ($showkey) {echo "<span class='key'>".$row["regierungsbezirk"]."</span><br>";} 118 echo $row["rnam"]." </td>" 119 ."\n\t\t\t<td title='Kreis'>"; 120 if ($showkey) {echo "<span class='key'>".$row["kreis"]."</span><br>";} 121 echo $row["knam"]." </td>" 122 ."\n\t\t\t<td title='Gemeinde'>"; 123 if ($showkey) {echo "<span class='key'>".$gem."</span><br>";} 124 echo $row["gnam"]." </td>" 125 . "\n\t\t\t<td title='Straße'>"; 126 if ($showkey) {echo "<span class='key'>".$lage."</span><br>";} 127 echo "<span class='wichtig'>".$snam."</span>" 128 . " </td>" 113 echo "\n\t\t\t<td title='Bundesland'>".DsKy($row["land"], 'Bundesland-*').$row["bnam"]." </td>" 114 ."\n\t\t\t<td title='Regierungsbezirk'>".DsKy($row["regierungsbezirk"], 'Regierungsbezirk-*').$row["rnam"]." </td>" 115 ."\n\t\t\t<td title='Kreis'>".DsKy($row["kreis"], 'Kreis-*').$row["knam"]." </td>" 116 ."\n\t\t\t<td title='Gemeinde'>".DsKy($gem, 'Gemeinde-*').$row["gnam"]." </td>" 117 ."\n\t\t\t<td title='Straße'>".DsKy($lage, 'Straßen-*')."<span class='wichtig'>".$snam."</span> </td>" 129 118 ."\n\t\t</tr>" 130 119 ."\n\t\t</table>"; … … 135 124 if ($ogml != "") { 136 125 echo "\n\t\t<p class='nwlink noprint'>" 137 ."\n\t\t<a href='alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$ogml; 138 if ($showkey) {echo "&showkey=j";} 139 echo "' title='Lage Ohne Hausnummer'>Lage <img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''></a>" 126 ."\n\t\t<a href='alkislage.php?gkz=".$gkz."&ltyp=o&gmlid=".$ogml.LnkStf() 127 ."' title='Lage Ohne Hausnummer'>Lage <img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''></a>" 140 128 ."\n\t\t</p>"; 141 129 } … … 199 187 $zpaar=!$zpaar; 200 188 echo "\n<tr class='".$trclass."'>" 201 ."\n\t<td>"; 202 if ($showkey) {echo "<span class='key'>".$rowf["gemarkungsnummer"]."</span> ";} 189 ."\n\t<td>".DsKy($rowf["gemarkungsnummer"], 'Gemarkungsnummer'); 203 190 if ($gwgmkg != $gmkg) { 204 191 echo "<b>".$gmkg."</b></td>"; … … 221 208 ."\n\t<td>\n\t\t<p class='nwlink noprint'>"; 222 209 if ($ltyp === 'm') { // nur Typ "Mit Haus" anzeigen. Dar Typ 'o' ist immer gleich und identisch mit dem Link im Kopf 223 echo "\n\t\t<a href='alkislage.php?gkz=".$gkz."&ltyp=".$ltyp."&gmlid=".$lgml; 224 if ($showkey) {echo "&showkey=j";} 225 echo "' title='Lagebezeichnung mit Hausnummer'>Lage <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a> "; 210 echo "\n\t\t<a href='alkislage.php?gkz=".$gkz."&ltyp=".$ltyp."&gmlid=".$lgml.LnkStf() 211 ."' title='Lagebezeichnung mit Hausnummer'>Lage <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a> "; 226 212 $cnths++; 227 213 } 228 214 // Link FlurstÃŒcksnachweis 229 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"]."&eig=n"; 230 if ($showkey) {echo "&showkey=j";} 231 echo "' title='Flurstücksnachweis'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>"; 232 echo "\n\t\t</p>\n\t</td>" 215 echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&gmlid=".$rowf["gml_id"].LnkStf()."&eig=n" 216 ."' title='Flurstücksnachweis'>Flurstück <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>" 217 ."\n\t\t</p>\n\t</td>" 233 218 ."\n</tr>"; 234 219 $j++; … … 238 223 echo "<p class='cnt'>".$j." Flurstücke"; 239 224 if ($cnths > 1) {echo " und ".$cnths." Hauptgebäude";} 240 echo " mit dieser Stra Ãe in der Lagebezeichnung</p>";225 echo " mit dieser Straße in der Lagebezeichnung</p>"; 241 226 } 242 227 pg_free_result($resf);
Note: See TracChangeset
for help on using the changeset viewer.