source: trunk/var/www/info/alkis/alkisausk.php @ 35

Revision 35, 12.2 KB checked in by hueben, 14 years ago (diff)
Line 
1<?php
2/*      alkisausk.php
3
4        ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo).
5        Dies Programm wird aus dem Mapserver-Template (FeatureInfo) aufgerufen.
6        Parameter:&gkz, &gml_id (optional &id)
7        Dies Programm gibt einen kurzen Ueberblick ÃŒber die wichtigsten Daten zum Flurstueck.
8        In einfachen Faellen wird auch der EigentÃŒmer ohne Adresse angezeigt.
9        Fuer detaillierte Angaben wird zum GB- oder FS-Nachweis verlinkt.
10
11        Version:
12        26.01.2010      internet-Version  mit eigener conf
13*/
14ini_set('error_reporting', 'E_ALL');
15session_start();
16// Bindung an Mapbender-Authentifizierung
17#require_once("/data/mapwww/http/php/mb_validateSession.php");
18#require_once("/data/conf/alkis_www_conf.php");
19#AE
20require_once(dirname(__FILE__)."/../../../php/mb_validateSession.php");
21require_once(dirname(__FILE__)."/../../../../conf/alkis_www_conf.php");
22
23include("alkisfkt.php");
24?>
25<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
26<html>
27<head>
28        <meta name="author" content="F. Jaeger">
29        <meta http-equiv="cache-control" content="no-cache">
30        <meta http-equiv="pragma" content="no-cache">
31        <meta http-equiv="expires" content="0">
32        <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
33        <link rel="stylesheet" type="text/css" href="alkisauszug.css">
34        <title>ALKIS-Auskunft</title>
35</head>
36<body>
37<?php
38$gmlid = isset($_GET["gmlid"]) ? $_GET["gmlid"] : 0;
39$gkz=urldecode($_REQUEST["gkz"]);
40$id = isset($_GET["id"]) ? $_GET["id"] : "n";
41$idanzeige=false;
42if ($id == "j") {$idanzeige=true;}
43$style=isset($_GET["style"]) ? $_GET["style"] : "kompakt";
44#$dbname = 'alkis05' . $gkz;
45#AE
46#$dbname = 'nas_wesseling';
47# echo("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
48$con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
49if (!$con) {echo "<br>Fehler beim Verbinden der DB.\n<br>";}
50
51// *** F L U R S T U E C K ***
52$sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, ";
53$sql.=" g.gemarkungsnummer, g.bezeichnung ";
54$sql.="FROM ax_flurstueck f ";
55$sql.="JOIN ax_gemarkung  g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer ";
56$sql.="WHERE f.gml_id='".$gmlid."';";
57// Weiter joinen: g.stelle -> ax_dienststelle "Katasteramt"
58$res=pg_query($con,$sql);
59if (!$res) echo "\n<p class='err'>Fehler bei Flurstuecksdaten\n<br>".$sql."</p>\n";
60if ($row = pg_fetch_array($res)) {
61        $gemkname=htmlentities($row["bezeichnung"], ENT_QUOTES, "UTF-8");
62        $gmkgnr=$row["gemarkungsnummer"];
63        $flurnummer=$row["flurnummer"];
64        $flstnummer=$row["zaehler"];
65        $nenner=$row["nenner"];
66        if ($nenner > 0) $flstnummer.="/".$nenner; // BruchNr
67        $flae=$row["amtlicheflaeche"];
68        $flae=number_format($flae,0,",",".") . " m&#178;";
69} else {echo "Fehler! Kein Treffer fuer gml_id=".$gmlid;}
70
71echo "<p class='fsausk'>Flurst&uuml;ck ".$gmkgnr."-".$flurnummer."-".$flstnummer."</p>\n";
72echo "<h1>ALKIS-Auskunft</h1>\n";
73echo "\n<h2>Flurst&uuml;ck</h2>\n";
74echo "\n<table class='bez'>\n";
75echo "\n<table class='outer'>\n<tr>\n<td>";
76echo "\n\t<table class='kennz' title='Flurst&uuml;ckskennzeichen'>\n\t<tr>";
77echo "\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>";
78echo "\n\t<tr>\n\t\t<td title='Gemarkung'>".$gmkgnr."<br>".$gemkname."</td>";
79echo "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>";
80echo "\n\t\t<td title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'>".$flstnummer."</td>\n\t</tr>\n\t</table>\n";
81echo "</td>\n<td>";
82if ($idanzeige) { linkgml($gkz, $gmlid, "Flurst&uuml;ck"); }
83echo "<br>\n\t<p class='nwlink'>weitere Auskunft:<br>";
84echo "\n\t<a href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$gmlid."&amp;eig=n"."&amp;style=".$style;
85if ($idanzeige) { echo "&amp;id=j";}
86echo "' title='Flurst&uuml;cksnachweis, alle Flurst&uuml;cksdaten'>FS-Nachweis</a>&nbsp;|&nbsp;";
87echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$gmlid."&amp;eig=j"."&amp;style=".$style;
88if ($idanzeige) echo "&amp;id=j";
89echo "' title='Flurst&uuml;cks- und Eigent&uuml;mernachweis'>FS- u. Eigent.-Nw</a><br>";
90echo "\n\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&amp;gmlid=".$gmlid."&amp;eig=j"."&amp;style=".$style;
91if ($idanzeige) echo "&amp;id=j";
92echo "' title='Geb&auml;udenachweis'>Geb&auml;udenachweis</a>";
93//echo "&nbsp;|&nbsp;<a href='alkisfshist.php?gkz=".$gkz."&amp;flurstkennz=".$gmlid."' title='Vorg&auml;nger- und Nachfolger-Flurst&uuml;cke'>Historie</a>\n";
94echo "\n\t</p>\n</td>";
95echo "\n</tr>\n</table>\n";
96echo "\n<p class='fsd'>Flurst&uuml;cksfl&auml;che: <b>".$flae."</b></p>\n";
97
98// *** G R U N D B U C H ***
99echo "\n<h2>Grundbuch</h2>";
100// ALKIS: FS --> bfs --> GS --> bsb --> GB.
101$sql ="SELECT b.gml_id, b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung as blatt, b.blattart, ";
102$sql.="s.gml_id AS s_gml, s.buchungsart, s.laufendenummer, s.zaehler, s.nenner, ";
103$sql.="z.bezeichnung ";  // stelle -> amtsgericht
104$sql.="FROM  alkis_beziehungen    bfs "; // Bez Flurst.- Stelle.
105$sql.="JOIN  ax_buchungsstelle      s ON bfs.beziehung_zu=s.gml_id ";
106$sql.="JOIN  alkis_beziehungen    bsb ON s.gml_id=bsb.beziehung_von "; // Bez. Stelle - Blatt
107$sql.="JOIN  ax_buchungsblatt       b ON bsb.beziehung_zu=b.gml_id ";
108$sql.="JOIN  ax_buchungsblattbezirk z ON z.land=b.land AND z.bezirk=b.bezirk ";
109$sql.="WHERE bfs.beziehung_von='".$gmlid."' ";
110$sql.="AND   bfs.beziehungsart='istGebucht' ";
111$sql.="AND   bsb.beziehungsart='istBestandteilVon' ";
112$sql.="ORDER BY b.bezirk, b.buchungsblattnummermitbuchstabenerweiterung, s.laufendenummer;";
113$resg=pg_query($con,$sql);
114if (!$resg) echo "\n<p class='err'>Keine Buchungen.<br>\nSQL= ".$sql."</p>\n";
115$j=0; // Z.Blatt
116while($rowg = pg_fetch_array($resg)) {
117        $beznam=$rowg["bezeichnung"];
118        echo "\n<hr>\n<table class='outer'>\n<tr>\n<td>";
119        echo "\n\t<table class='kennz' title='Bestandskennzeichen'>\n\t<tr>\n\t\t<td class='head'>Bezirk</td>";
120        echo "\n\t\t<td class='head'>".blattart($rowg["blattart"])."</td>\n\t\t<td class='head'>Lfd-Nr,</td>\n\t\t<td class='head'>Buchungsart</td>\n\t</tr>";
121        echo "\n\t<tr>\n\t\t<td title='Grundbuchbezirk'>".$rowg["bezirk"]."<br>".$beznam."</td>";
122        echo "\n\t\t<td title='Grundbuch-Blatt'>".$rowg["blatt"]."</td>";
123        echo "\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundst&uuml;ck)'>".$rowg["laufendenummer"]."</td>";
124        echo "\n\t\t<td title='Buchungsart'>".$rowg["buchungsart"]."<br>".buchungsart($rowg["buchungsart"])."</td>\n\t</tr>\n\t</table>";
125        if ($rowg["zahler"] <> "") {
126                echo "\n<p class='ant'>".$rowg["zahler"]."/".$rowg["nenner"]."&nbsp;Anteil am Flurst&uuml;ck</p>";
127        }
128        echo "\n</td>\n<td>";
129        if ($idanzeige) { linkgml($gkz, $rowg[0], "Buchungsblatt");}
130        echo "<br>\n";
131        echo "\n\t<p class='nwlink'>weitere Auskunft:<br>\n\t\t<a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$rowg[0]."&amp;style=".$style;
132        if ($idanzeige) echo "&amp;id=j";
133        echo "' title='Grundbuchnachweis mit kompletter Eigent&uuml;merangabe'>GB-Nachweis</a>\n\t</p>\n</td>\n";
134        echo "</table>";
135        if ($rowg["blattart"] <> "1000") { // schwierige SonderfÀlle nicht in der Übersicht bearbeiten
136                echo "\n<p>Blattart: ".blattart($rowg["blattart"])." (".$rowg["blattart"].").<br>\n";
137                echo "Eigent&uuml;mer siehe\n\t<a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$rowg[0]."&amp;style=".$style;
138                if ($idanzeige) echo "&amp;id=j";
139                echo "' title='Grundbuchnachweis mit kompletter Eigent&uuml;merangabe'>GB-Nachweis</a>\n</p>";
140                //echo "oder"\n\t<a title='ALKIS-Beziehungen-Browser' href='alkisrelationen.php?gkz=".$gkz."&amp;gmlid=".$rowg["s_gml"]."&amp;style=".$style."'>Beziehungen der Buchungsstelle</a>\n</p>";
141                linkgml($gkz, $rowg["s_gml"], "Buchungsstelle");
142        } else { // normales Grundbuchblatt
143
144                // ** E I G E N T U E M E R, zum GB
145                echo "\n\n<h3>Eigent&uuml;mer:</h3>\n";
146
147                // Schleife 1: N a m e n s n u m m e r
148                // Beziehung: ax_namensnummer  >istBestandteilVon>  ax_buchungsblatt
149                $sql="SELECT n.gml_id, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, ";
150                $sql.="n.artderrechtsgemeinschaft AS adr, n.beschriebderrechtsgemeinschaft as beschr, n.eigentuemerart, n.anlass ";
151                $sql.="FROM  ax_namensnummer   n ";
152                $sql.="JOIN  alkis_beziehungen b ON b.beziehung_von=n.gml_id ";
153                $sql.="WHERE b.beziehung_zu='".$rowg["gml_id"]."' "; // id blatt
154                $sql.="AND   b.beziehungsart='istBestandteilVon' ";
155                $sql.="ORDER BY laufendenummernachdin1421;";
156                $resn=pg_query($con, $sql);
157                if (!$resn) {echo "<p class='err'>Fehler bei Eigentuemer<br>SQL= ".$sql."<br></p>\n";}
158                echo "\n<table class='eig'>";
159                $n=0; // Z.NamNum.
160                while($rown = pg_fetch_array($resn)) {
161                        echo "\n<tr>\n\t<td class='nanu' title='Namens-Nummer'>";
162                        // VOR die Tabelle: "EigentÃŒmer"
163                        $namnum=kurz_namnr($rown["lfd"]);
164                        echo "\n\t<p>".$namnum."</p>";
165                        if ($idanzeige) {linkgml($gkz, $rown["gml_id"], "Namensnummer");}
166                        echo "\n\t</td>\n\t<td>";
167                        $rechtsg=$rown["adr"];
168                        if ($rechtsg != "" ) {
169                                if ($rechtsg == 9999) { // sonstiges
170                                        echo "\n\t\t<p class='zus' title='Beschrieb der Rechtsgemeinschaft'>".htmlentities($rown["beschr"], ENT_QUOTES, "UTF-8")."</p>";
171                                } else {
172                                        echo "\n\t\t<p class='zus' title='Art der Rechtsgemeinschaft'>".htmlentities(rechtsgemeinschaft($rown["adr"]), ENT_QUOTES, "UTF-8")."</p>";
173                                }
174                        }
175                        // +++ ggf. Seitenzweige ("andere Namennummern")
176
177                        // Schleife 2: P e r s o n 
178                        // Beziehung: ax_person  <benennt<  ax_namensnummer
179                        $sql="SELECT p.gml_id, p.nachnameoderfirma, p.vorname, p.geburtsname, p.geburtsdatum, p.namensbestandteil, p.akademischergrad ";
180                        $sql.="FROM  ax_person p ";
181                        $sql.="JOIN  alkis_beziehungen v ON v.beziehung_zu=p.gml_id ";
182                        $sql.="WHERE v.beziehung_von='".$rown["gml_id"]."' "; // id num
183                        $sql.="AND   v.beziehungsart='benennt';";
184                        $rese=pg_query($con, $sql);
185                        if (!$rese) echo "\n<p class='err'>Fehler bei Eigentuemer<br>SQL= ".$sql."<br></p>\n";
186                        $i=0; // Z.Eig.
187                        while($rowe = pg_fetch_array($rese)) {
188                                $diePerson="";
189                                if ($rowe["akademischergrad"] <> "") $diePerson=$rowe["akademischergrad"]." ";
190                                $diePerson.=$rowe["nachnameoderfirma"];
191                                if ($rowe["vorname"] <> "") $diePerson.=", ".$rowe["vorname"];
192                                if ($rowe["namensbestandteil"] <> "") $diePerson.=". ".$rowe["namensbestandteil"];
193                                if ($rowe["geburtsdatum"] <> "") $diePerson.=", geb. ".$rowe["geburtsdatum"];
194                                if ($rowe["geburtsname"] <> "") $diePerson.=", geb. ".$rowe["geburtsname"];
195                                $diePerson=htmlentities($diePerson, ENT_QUOTES, "UTF-8"); // Umlaute
196                                // Spalte 1 enthÀlt die Namensnummer, nur in Zeile 0
197                                if ($i > 0) {echo "\n<tr>\n\t<td></td>\n\t<td>";}
198                                // Spalte 2 = Angaben
199                                echo "\n\t<p class='geig' title='Eigent&uuml;merart ".eigentuemerart($rown["eigentuemerart"])."'>".$diePerson."</p></td>";
200                                // Spalte 3 = Link
201                                echo "\n\t\t<td>\n\t\t\t<p class='nwlink noprint'>\n\t\t\t<a href='alkisnamstruk.php?gkz=".$gkz."&amp;gmlid=".$rowe[0]."&amp;style=".$style;
202                                if ($idanzeige) { echo "&amp;id=j";}
203                                echo "' title='vollst&auml;ndiger Name und Adresse eines Eigent&uuml;mers'>Person</a>\n\t\t</p>";
204                                if ($idanzeige) { linkgml($gkz, $rowe["gml_id"], "Person");}
205                                echo "</td>\n</tr>";
206                                $i++; // Z. Person
207                                if ($rown["zaehler"] <> "") {
208                                        echo "\n<tr>\n\t<td></td>\n\t<td><p class='avh' title='Anteil'>".$rown["zaehler"]."/".$rown["nenner"]." Anteil</p>";
209                                        echo "\n</td>\n\t<td></td>\n</tr>";
210                                }
211                        }
212                        if ($i == 0) { // keine Pers zur NamNum
213                                if ($rechtsg != 9999) { // Normal bei Sondereigentum
214                                        echo "\n<tr>\n<td>";
215                                        linkgml($gkz, $rown["gml_id"], "Namensnummer");
216                                        echo "</td>\n<td>\n\t\t<p class='err'>Kein Eigent&uuml;mer gefunden.</p>";
217                                        echo "\n\t\t\n\t</td>\n\t<td></td>\n<tr>";
218                                }
219                        }
220                        $n++; // Z.NamNum
221                }
222                echo "\n</table>\n";
223                if ($n == 0) {
224                        echo "\n<p class='err'>Keine Namensnummer gefunden.</p>";
225                        linkgml($gkz, $gmlid, "Buchungsblatt");
226                }
227        }
228        $j++;
229}
230if ($j == 0) { // Entwicklungshilfe
231        echo "\n<p class='err'>Keine Buchungen gefunden.</p>";
232        echo "\n<p><a target='_blank' href=alkisrelationen.php?gkz=".$gkz."&amp;gmlid=".$gmlid."&amp;style=".$style.">Beziehungen des Flurst&uuml;cks</a></p>";
233        //echo "<p>".$sql."</p>"; // TEST
234}
235echo "\n<hr>";
236footer($gkz, $gmlid, $idanzeige, $self, $hilfeurl, $style);
237
238?>
239</body>
240</html>
Note: See TracBrowser for help on using the repository browser.