source: trunk/var/www/info/alkis/alkisnamstruk.php @ 61

Revision 61, 9.5 KB checked in by astrid.emde, 13 years ago (diff)

Umstellung auf prepared statements

RevLine 
[26]1<?php
[41]2/*      Modul: alkisnamstruk.php
[49]3
4        ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo).
5        Namens- und Adressdaten fuer einen Eigentuemer aus ALKIS PostNAS
6
[41]7        Version:
[45]8        06.09.2010  Schluessel anschaltbar
[60]9        15.09.2010  Function "buchungsart" durch JOIN ersetzt, Tabelle GB einzeilig
10        14.12.2010  Pfad zur Conf
[41]11
[49]12        ToDo:
[60]13        Sortierung der GrundbÃŒcher zum Namen
[26]14*/
15ini_set('error_reporting', 'E_ALL & ~ E_NOTICE');
[60]16session_start();
17$gkz=urldecode($_REQUEST["gkz"]);
18require_once("alkis_conf_location.php");
[49]19if ($auth == "mapbender") {
20        // Bindung an Mapbender-Authentifizierung
21        require_once($mapbender);
22}
[26]23include("alkisfkt.php");
24?>
25<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
26<html>
27<head>
[49]28        <meta name="author" content="F. Jaeger krz" >
[26]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        <title>ALKIS Person und Adresse</title>
[41]34        <link rel="stylesheet" type="text/css" href="alkisauszug.css">
35        <link rel="shortcut icon" type="image/x-icon" href="ico/Eigentuemer_2.ico">
36        <style type='text/css' media='print'>
[60]37                .noprint {visibility: hidden;}
[41]38        </style>
[26]39</head>
40<body>
41<?php
42$gmlid=urldecode($_REQUEST["gmlid"]);
[43]43$id = isset($_GET["id"]) ? $_GET["id"] : "n";
44if ($id == "j") {
45        $idanzeige=true;
46} else {
47        $idanzeige=false;
48}
49$keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n";
50if ($keys == "j") {
51        $showkey=true;
52} else {
53        $showkey=false;
54}
[26]55$con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
[60]56if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n";
[41]57
58// Balken
59echo "<p class='nakennz'>ALKIS Name id=".$gmlid."&nbsp;</p>\n";
60
61echo "\n<h2><img src='ico/Eigentuemer.ico' width='16' height='16' alt=''> Person</h2>\n";
[26]62if (!$con) "\n<p class='err'>Fehler beim Verbinden der DB</p>\n";
[43]63
[26]64$sql="SELECT nachnameoderfirma, anrede, vorname, geburtsname, geburtsdatum, namensbestandteil, akademischergrad ";
[61]65$sql.="FROM ax_person WHERE gml_id= $1;";
66
67$v = array($gmlid);
68$res = pg_prepare("", $sql);
69$res = pg_execute("", $v);
70
[26]71if (!$res) {echo "\n<p class='err'>Fehler bei Zugriff auf Namensnummer</p>\n";}
72if ($idanzeige) { linkgml($gkz, $gmlid, "Person"); }
73if ($row = pg_fetch_array($res)) {
74        $vor=htmlentities($row["vorname"], ENT_QUOTES, "UTF-8");
75        $nam=htmlentities($row["nachnameoderfirma"], ENT_QUOTES, "UTF-8");
76        $geb=htmlentities($row["geburtsname"], ENT_QUOTES, "UTF-8");
77        $anr=anrede($row["anrede"]);
78        $aka=$row["akademischergrad"];
[43]79
[26]80        echo "<table>\n";
81                echo "\t<tr><td class='nhd'>Anrede:</td><td class='nam'>".$anr."</td></tr>\n";
82                echo "\t<tr><td class='nhd'>Nachname oder Firma:</td><td class='nam'>".$nam."</td></tr>\n";
83                echo "\t<tr><td class='nhd'>Vorname:</td><td class='nam'>".$vor."</td></tr>\n";
84                echo "\t<tr><td class='nhd'>Geburtsname:</td><td class='nam'>".$geb."</td></tr>\n";
85                echo "\t<tr><td class='nhd'>Geburtsdatum:</td><td class='nam'>".$row["geburtsdatum"]."</td></tr>\n";
86                echo "\t<tr><td class='nhd'>Namensbestandteil:</td><td class='nam'>".$row["namensbestandteil"]."</td></tr>\n";
87                echo "\t<tr><td class='nhd'>akademischer Grad:</td><td class='nam'>".$aka."</td></tr>\n";
88        echo "\n</table>\n<hr>\n";
89       
90        // A d r e s s e
[41]91        echo "\n<h3><img src='ico/Strasse_mit_Haus.ico' width='16' height='16' alt=''> Adresse</h3>\n";
[26]92        $sql ="SELECT a.gml_id, a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer, a.bestimmungsland ";
93        $sql.="FROM   ax_anschrift a ";
94        $sql.="JOIN   alkis_beziehungen b ON a.gml_id=b.beziehung_zu ";
[61]95        $sql.="WHERE  b.beziehung_von= $1 ";
[26]96        $sql.="AND    b.beziehungsart='hat';"; //"ORDER  BY ?;";
97        //echo "\n<p class='err'>".$sql."</p>\n";
[61]98       
99        $v = array($gmlid);
100        $resa = pg_prepare("", $sql);
101        $resa = pg_execute("", $v);
102
[26]103        if (!$resa) echo "\n<p class='err'>Fehler bei Adressen.<br>\nSQL= ".$sql."</p>\n";
104        $j=0;
105        while($rowa = pg_fetch_array($resa)) {
106                $gmla=$rowa["gml_id"];
107                $plz=$rowa["plz"];
108                $ort=htmlentities($rowa["ort_post"], ENT_QUOTES, "UTF-8");
109                $str=htmlentities($rowa["strasse"], ENT_QUOTES, "UTF-8");
110                $hsnr=$rowa["hausnummer"];
111                $land=htmlentities($rowa["bestimmungsland"], ENT_QUOTES, "UTF-8");
112                if ($idanzeige) { linkgml($gkz, $gmla, "Adresse"); }
113
114                echo "<table>\n";
115                        echo "\t<tr><td class='nhd'>PLZ:</td><td class='nam'>".$plz."</td></tr>\n";
116                        echo "\t<tr><td class='nhd'>Ort:</td><td class='nam'>".$ort."</td></tr>\n";
117                        echo "\t<tr><td class='nhd'>Strasse:</td><td class='nam'>".$str."</td></tr>\n";
118                        echo "\t<tr><td class='nhd'>Hausnummer:</td><td class='nam'>".$hsnr."</td></tr>\n";
119                        echo "\t<tr><td class='nhd'>Land:</td><td class='nam'>".$land."</td></tr>\n";
120                echo "\n</table>\n<br>\n";
121                $j++;
[45]122
123                // Name und Adresse Kompakt (im Rahmen)
124                // Alles was man fuer ein Anschreiben braucht
125                echo "<img src='ico/Namen.ico' width='16' height='16' alt='Brief' title='Anschrift'>"; // Symbol "Brief"       
126                echo "\n<div class='adr' title='Anschrift'>".$anr." ".$aka." ".$vor." ".$nam."<br>";
127                echo "\n".$str." ".$hsnr."<br>";
128                echo "\n".$plz." ".$ort."</div>";
[26]129        }
130        if ($j == 0) {echo "\n<p class='err'>Keine Adressen.</p>\n";}
131
132        // *** G R U N D B U C H ***
[41]133        echo "\n<hr>\n<h3><img src='ico/Grundbuch_zu.ico' width='16' height='16' alt=''> Grundb&uuml;cher</h3>\n";
[26]134        // person <benennt< namensnummer >istBestandteilVon>                Buchungsblatt
[60]135        //                               >bestehtAusRechtsverhaeltnissenZu> namensnummer   (Nebenzweig/SonderfÀlle?)
[26]136
137        $sql ="SELECT n.gml_id AS gml_n, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, ";
[45]138        $sql.="g.gml_id AS gml_g, g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung as nr, g.blattart, ";
139        $sql.="b.bezeichnung AS beznam ";
[26]140        $sql.="FROM  alkis_beziehungen bpn ";
141        $sql.="JOIN  ax_namensnummer   n   ON bpn.beziehung_von=n.gml_id ";
142        $sql.="JOIN  alkis_beziehungen bng ON n.gml_id=bng.beziehung_von ";
143        $sql.="JOIN  ax_buchungsblatt  g   ON bng.beziehung_zu=g.gml_id ";
[45]144        $sql.="JOIN  ax_buchungsblattbezirk b ON g.land = b.land AND g.bezirk = b.bezirk ";
[61]145        $sql.="WHERE bpn.beziehung_zu= $1 ";
[26]146        $sql.="AND   bpn.beziehungsart='benennt' AND bng.beziehungsart='istBestandteilVon' ";
[49]147        $sql.="ORDER BY g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung;";
148        // buchungsblatt... mal mit und mal ohne fuehrende Nullen, bringt die Sortierung durcheinander
[26]149
150        //echo "\n<p class='err'>".$sql."</p>\n";
[61]151        $v = array($gmlid);
152        $resg = pg_prepare("", $sql);
153        $resg = pg_execute("", $v);
154
[26]155        if (!$resg) echo "\n<p class='err'>Fehler bei Grundbuch.<br>\nSQL= ".$sql."</p>\n";
156        $j=0;
[45]157        echo "<table class='eig'>";
158
159        echo "\n<tr>";
160                echo "\n\t<td class='head'>Bezirk</td>";
161                echo "\n\t<td class='head'>Blattart</td>";
162                echo "\n\t<td class='head'>Blatt</td>";
163                echo "\n\t<td class='head'>Namensnummer</td>";
164                echo "\n\t<td class='head'>Anteil</td>";
[60]165                echo "\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>";
[45]166        echo "\n</tr>";
167
[26]168        while($rowg = pg_fetch_array($resg)) {
169                $gmln=$rowg["gml_n"];
170                $gmlg=$rowg["gml_g"];
171                $namnum=kurz_namnr($rowg["lfd"]);
172                $zae=$rowg["zaehler"];
[45]173                $blattkey=$rowg["blattart"];
174                $blattart=blattart($blattkey);
[26]175
176                echo "\n<tr>";
[45]177
178                        echo "\n\t<td class='gbl'>"; // GB-Bezirk"
179                                if ($showkey) {
180                                        echo "<span class='key'>".$rowg["bezirk"]."</span> ";
181                                }                               
182                                echo $rowg["beznam"];
[26]183                        echo "</td>";
[45]184
185                        echo "\n\t<td class='gbl'>"; // Blattart
186                                if ($showkey) {
187                                        echo "<span class='key'>".$blattkey."</span> ";
188                                }                       
189                                echo $blattart;
190                        echo "</td>";
191
192                        echo "\n\t<td class='gbl'>"; // Blatt
193                                echo "<span class='wichtig'>".$rowg["nr"]."</span>";
194                                if ($idanzeige) {
195                                        linkgml($gkz, $gmlg, "Grundbuchblatt");                                 }
196                        echo "</td>";
[26]197
[45]198                        echo "\n\t<td class='gbl'>"; // Namensnummer
199                                If ($namnum == "") {
200                                        echo "&nbsp;";                                 
201                                } else {
202                                        echo $namnum;
203                                }
204                                if ($idanzeige) {
205                                        linkgml($gkz, $gmln, "Namensnummer");
206                                }
207                        echo "</td>";
208
209                        echo "\n\t<td class='gbl'>"; // Anteil
210                                If ($zae == "") {
211                                        echo "&nbsp;";
212                                } else {
213                                        echo $zae."/".$rowg["nenner"]." Anteil";
214                                }
215                        echo "</td>";
216
[26]217                        echo "\n\t<td class='gbl'>";
218                                echo "\n\t\t<p class='nwlink noprint'>";
[43]219                                        echo "\n\t\t\t<a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$gmlg;
220                                                if ($idanzeige) {echo "&amp;id=j";}
221                                                if ($showkey)   {echo "&amp;showkey=j";}
222                                                echo "' title='Bestandsnachweis'>";
[45]223                                                echo $blattart;
224                                        echo "\n\t\t\t<img src='ico/GBBlatt_link.ico' width='16' height='16' alt=''></a>";
[43]225                                echo "\n\t\t</p>";                         echo "\n\t</td>";
[45]226
[43]227                echo "\n</tr>";
[26]228                // +++ >bestehtAusRechtsverhaeltnissenZu> namensnummer ??
229                //     z.B. eine Namennummer "Erbengemeinschaft" zeigt auf Namensnummern mit EigentÃŒmern
230                $i++;
[60]231        }
[26]232        echo "</table>";
233        if ($i == 0) {echo "\n<p class='err'>Kein Grundbuch.</p>\n";}
234} else {
235        echo "\n\t<p class='err'>Fehler! Kein Treffer f&uuml;r\n\t<a target='_blank' href='alkisrelationen.php?gkz=".$gkz."&amp;gmlid=".$gmlid."'>".$gmlid."</a>\n</p>\n\n";
236}
[41]237?>
[26]238
239<form action=''>
240        <div class='buttonbereich noprint'><hr>
241                <input type='button' name='back'  value='&lt;&lt;' title='Zur&uuml;ck'  onClick='javascript:history.back()'>&nbsp;
242                <input type='button' name='print' value='Druck' title='Seite Drucken' onClick='window.print()'>&nbsp;
243                <input type='button' name='close' value='X' title='Fenster schlie&szlig;en' onClick='window.close()'>
244        </div>
245</form>
246
247<?php footer($gkz, $gmlid, $idumschalter, $idanzeige, $_SERVER['PHP_SELF']."?", $hilfeurl, "", $showkey); ?>
248
[49]249</body>
[26]250</html>
Note: See TracBrowser for help on using the repository browser.