source: trunk/info/info/alkisn/alkisinlaybaurecht.php @ 427

Revision 427, 4.4 KB checked in by frank.jaeger, 2 years ago (diff)

Überarbeitung der Auskunft: Durch Functions den Code verdichtet. Drei neue Arten von Bauwerken.

Line 
1<?php
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
8        Ähnlich alkisbaurecht, aber nur Basisdaten, kein Footer und keine FlurstÃŒcks-Verschneidung.
9
10        Version:
11        2016-02-24 Version fÃŒr norGIS-ALKIS-Import
12        ....
13        2020-02-03 Fenster-Weite
14        2020-02-20 Authentifizierung ausgelagert in Function darf_ich()
15        2020-12-15 Input-Validation und Strict Comparisation (===)
16        2021-12-09 2021-12-09 Neue Parameter: $katAmtMix (Kataster-Amt-Mix)
17*/
18ini_set("session.cookie_httponly", 1);
19session_start();
20$cntget = extract($_GET); // Parameter in Variable umwandeln
21// strikte Validierung aller Parameter
22if (isset($gmlid)) {
23        if (!preg_match('#^[0-9A-Za-z]{16}$#', $gmlid)) {die("Eingabefehler gmlid");}
24} else {
25        die("Fehlender Parameter");
26}
27if (isset($gkz)) {
28        if (!preg_match('#^[0-9]{3}$#', $gkz)) {die("Eingabefehler gkz");}
29} else {
30        die("Fehlender Parameter");
31}
32
33include "alkis_conf_location.php";
34include "alkisfkt.php";
35
36// Wert fÃŒr "width=" aus der Function "imFenster" synchron halten mit "@media screen body width" aus "alkisauszug.css"
37echo <<<END
38<!doctype html>
39<html lang="de">
40<head>
41        <meta charset="utf-8">
42        <meta name="viewport" content="width=device-width, initial-scale=1.0">
43        <title>ALKIS Bau-, Raum- oder Bodenordnungsrecht</title>
44        <link rel="stylesheet" type="text/css" href="alkisauszug.css">
45        <link rel="shortcut icon" type="image/x-icon" href="ico/Gericht.ico">
46        <script type="text/javascript">
47        function imFenster(dieURL) {
48                var link = encodeURI(dieURL);
49                window.open(link,'','left=30,top=30,width=750,height=800,resizable=yes,menubar=no,toolbar=no,location=no,status=no,scrollbars=yes');
50        }
51        </script>
52</head>
53<body style='width: 98%;'>
54END;
55
56$erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); }
57$dbg=$debug;
58
59// Body des Inlay muss in Mapbender-Feature-Info-PopUp passen. Kleiner als 750 aus css.
60$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisinlaybaurecht.php'");
61if (!$con) echo "\n<p class='err'>Fehler beim Verbinden der DB</p>";
62
63// Keine Spalten, die eine BerechtigungsprÌfung nach Gemeinde ermöglichen:
64$sql ="SELECT r.ogc_fid, r.name, r.stelle, r.bezeichnung AS rechtbez, a.beschreibung AS adfbez, d.bezeichnung AS stellbez, round(st_area(r.wkb_geometry)::numeric,0) AS flae
65FROM ax_bauraumoderbodenordnungsrecht r
66LEFT JOIN ax_artderfestlegung_bauraumoderbodenordnungsrecht a ON r.artderfestlegung = a.wert
67LEFT JOIN ax_dienststelle d ON r.land=d.land AND r.stelle=d.stelle ".UnqKatAmt("r","d")
68."WHERE r.gml_id= $1 AND r.endet IS NULL AND d.endet IS NULL;";
69
70$v = array($gmlid);
71$res = pg_prepare("", $sql);
72$res = pg_execute("", $v);
73
74if (!$res) {
75        echo "\n<p class='err'>Fehler bei Baurecht.</p>";
76        if ($dbg > 2) {echo "\n<p class='err'>SQL=<br>".str_replace("$1", "'".$gmlid."'", $sql)."</p>";}
77}
78echo "\n<h2><img src='ico/Gericht.png' width='16' height='16' alt=''> Bau-, Raum- oder Bodenordnungsrecht</h2>";
79if ($dbg > 0) {
80        $zeianz=pg_num_rows($res);
81        if ($zeianz > 1){
82                echo "\n<p class='err'>Die Abfrage liefert mehr als ein (".$zeianz.") Bauordnungs-Objekt!</p>";
83                if ($dbg > 2) {echo "\n<p class='dbg'>SQL=<br>".htmlentities(str_replace("$1","'".$gmlid."'",$sql), ENT_QUOTES, "UTF-8")."</p>";}
84        }
85}
86if ($row = pg_fetch_assoc($res)) {
87        echo "\n<table>"
88                ."\n<tr>"
89                        ."\n\t<td class='li'>Art der Festlegung:</td>\n\t<td>"
90                        ."<span class='wichtig'>".$row["adfbez"]."</span></td>"
91                ."\n</tr>";
92                $enam=$row["name"];
93                if ($enam != "") {
94                        echo "\n<tr>"
95                                ."\n\t<td class='li'>Eigenname des Gebietes:</td>\n\t<td>".$enam."</td>"
96                        ."\n</tr>";
97                }
98                echo "\n<tr>"
99                        ."\n\t<td class='li'>Verfahrensnummer:</td>\n\t<td>".$row["rechtbez"]."</td>"
100                ."\n</tr>";
101                $stell=$row["stelle"];
102                if ($stell != "") {
103                        echo "\n<tr>"
104                                ."\n\t<td class='li'>Dienststelle:</td>\n\t<td>".$row["stellbez"]."</td>"
105                        ."\n</tr>";
106                }
107                echo "\n<tr>"
108                        ."\n\t<td class='li'>Fl&auml;che:</td>";
109                        $flae=number_format($row["flae"],0,",",".")." m&#178;";
110                        echo "\n\t<td>".$flae."</td>"
111                ."\n</tr>"
112        ."\n</table>";
113} else {
114        echo "\n<p class='err'>Fehler! Kein Treffer bei gml_id=".$gmlid."</p>";
115}
116
117echo "\n<p class='nwlink'>"
118        ."\n\t<a href='javascript:imFenster(\"alkisbaurecht.php?gkz=".$gkz."&amp;gmlid=".$gmlid."\")' "
119        ."' title='Bau-, Raum- oder Bodenordnungsrecht'>Weitere Auskunft <img src='ico/Gericht.png' width='16' height='16' alt=''></a>"
120."\n</p>";
121
122?>
123
124</body>
125</html>
Note: See TracBrowser for help on using the repository browser.