Ignore:
Timestamp:
06/24/21 15:59:16 (3 years ago)
Author:
frank.jaeger
Message:

Aktualisierungen der ALKIS-Buchauskunft, neues Modul für Bauwerke, Härtung

File:
1 edited

Legend:

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

    r412 r422  
    77        Version: 
    88        2016-02-24 Version fuer norGIS-ALKIS-Import 
    9         2016-03-14 Korrekturen 
    10         2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen 
    11         2017-06-08 Validierung Eingabeparameter, gestreifte Tabelle, Feinkorrekturen 
    12         2017-10-09 Sauber filtern auf endet IS NULL 
    13         2018-04-23 &nodebug 
    14         2018-11-09 Umstellung Full-Schema 
     9        .... 
     10        2020-02-20 Authentifizierung ausgelagert in Function darf_ich() 
     11        2020-12-03 function selbstverlinkung() statt $_SERVER['PHP_SELF'] 
     12        2020-12-15 Input-Validation und Strict Comparisation (===) 
    1513 
    1614        ToDo: 
     
    2018        Mit FlÀchen-Verschneidung auch weitere FS anzeigen? 
    2119*/ 
     20ini_set("session.cookie_httponly", 1); 
    2221session_start(); 
    2322$showkey="n"; $nodebug=""; // Var. aus Parameter initalisieren 
     
    2524 
    2625// strikte Validierung aller Parameter 
    27 if (!isset($gmlid) or !preg_match('#^[0-9A-Za-z]{16}$#', $gmlid)) {die("Eingabefehler gmlid");} 
    28 if (!isset($gkz) or !preg_match('#^[0-9]{3}$#', $gkz)) {die("Eingabefehler gkz");} 
     26if (isset($gmlid)) { 
     27        if (!preg_match('#^[0-9A-Za-z]{16}$#', $gmlid)) {die("Eingabefehler gmlid");} 
     28} else { 
     29        die("Fehlender Parameter"); 
     30} 
     31if (isset($gkz)) { 
     32        if (!preg_match('#^[0-9]{3}$#', $gkz)) {die("Eingabefehler gkz");} 
     33} else { 
     34        die("Fehlender Parameter"); 
     35} 
    2936if (!preg_match('#^[j|n]{0,1}$#', $showkey)) {die ("Eingabefehler showkey");} 
    30 if ($showkey == "j") {$showkey=true;} else {$showkey=false;} 
     37if ($showkey === "j") {$showkey=true;} else {$showkey=false;} 
    3138if (!preg_match('#^[m|p|o]{1}$#', $ltyp)) {die ("Eingabefehler ltyp");} 
    3239if (!preg_match('#^j{0,1}$#', $nodebug)) {die("Eingabefehler nodebug");} 
    3340 
    34 require_once("alkis_conf_location.php"); 
    35 if ($auth == "mapbender") {require_once($mapbender);} 
    36 include("alkisfkt.php"); 
     41include "alkis_conf_location.php"; 
     42include "alkisfkt.php"; 
    3743 
    3844switch ($ltyp) { 
     
    5965<body> 
    6066END; 
     67 
     68$erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('<p class="stop1">Abbruch</p></body>'); } 
     69 
    6170// Mit URL-Parameter "&nodebug=j" kann man die Entwicklungsumgebung (in Conf definiert) ausschalten. 
    6271// Manuell an die URL anfÃŒgen, wirkt nur temporÀr und wird nicht in Links weiter gereicht. 
    63 if ($nodebug == "j") {$debug=0;}  
     72if ($nodebug === "j") {$debug=0;}  
    6473 
    6574$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkislage.php'"); 
     
    94103if (!$res) { 
    95104        echo "\n<p class='err'>Fehler bei Lagebezeichnung.</p>"; 
    96         if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."<br>$1 = gml_id = '".$gmlid."'</p>";} 
     105        if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".htmlentities(str_replace("$1", "'".$gmlid."'", $sql), ENT_QUOTES, "UTF-8")."</p>";} 
    97106} 
    98107 
     
    117126                        $kennz.=$hsnr; 
    118127                        $untertitel="Hauptgeb&auml;ude mit Hausnummer"; 
    119                         echo "\n<p class='lage'>ALKIS Lagebezeichnung mit Hausnummer ".$kennz."&nbsp;</p>"; // Balken 
     128                        echo "\n<p class='balken lage'>ALKIS Lagebezeichnung mit Hausnummer ".$kennz."&nbsp;</p>"; // Balken 
    120129                        $osub=""; 
    121130                break; 
     
    125134                        $kennz.=$pseu."-".$lfd; 
    126135                        $untertitel="NebengebÀude mit laufender Nummer (Lagebezeichnung mit Pseudonummer)"; 
    127                         echo "\n<p class='lage'>ALKIS Lagebezeichnung NebengebÀude ".$kennz."&nbsp;</p>"; // Balken 
     136                        echo "\n<p class='balken lage'>ALKIS Lagebezeichnung NebengebÀude ".$kennz."&nbsp;</p>"; // Balken 
    128137                        $osub=""; 
    129138                break; 
     
    135144                                $kennz=" - ".$unver; 
    136145                                $untertitel="Gewanne (unverschl&uuml;sselte Lage)"; 
    137                                 echo "\n<p class='lage'>ALKIS Lagebezeichnung Ohne Hausnummer ".$kennz."&nbsp;</p>"; // Balken 
     146                                echo "\n<p class='balken lage'>ALKIS Lagebezeichnung Ohne Hausnummer ".$kennz."&nbsp;</p>"; // Balken 
    138147                        } else { 
    139148                                $osub="s"; // Sub-Typ Strasse (ohne HsNr) 
    140149                                $kennz.=$unver; 
    141150                                $untertitel="Stra&szlig;e ohne Hausnummer"; 
    142                                 echo "\n<p class='lage'>ALKIS Lagebezeichnung Ohne Hausnummer ".$kennz."&nbsp;</p>"; // Balken 
     151                                echo "\n<p class='balken lage'>ALKIS Lagebezeichnung Ohne Hausnummer ".$kennz."&nbsp;</p>"; // Balken 
    143152                        } 
    144153                break; 
     
    147156        echo "\n<p class='err'>Fehler! Kein Treffer fuer Lagebezeichnung mit gml_id='".$gmlid."'</p>"; 
    148157        if ($debug > 2) { 
    149                 echo "\n<p class='err'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."<br>$1 = gml_id = '".$gmlid."'</p>"; 
     158                echo "\n<p class='err'>SQL=<br>".htmlentities(str_replace("$1", "'".$gmlid."'", $sql), ENT_QUOTES, "UTF-8")."</p>"; 
    150159        } 
    151160        echo "\n</body>\n</html>"; 
     
    174183                                break; 
    175184                                case "o": //"Ohne HsNr" 
    176                                         if ($osub == "g") { 
     185                                        if ($osub === "g") { 
    177186                                                echo "\n\t\t\t<td class='head'>unverschl&uuml;sselte Lage</td>"; 
    178187                                        } 
     
    200209                                echo "\n\t\t\t<td title='Stra&szlig;e'>"; 
    201210                                if ($showkey and $osub != "g") {echo "<span class='key'>".$lage."</span><br>";} 
    202                                 if ($ltyp == "o") { 
     211                                if ($ltyp === "o") { 
    203212                                        echo "<span class='wichtig'>".$snam."</span>"; 
    204213                                } else { 
     
    217226                                break; 
    218227                                case "o": 
    219                                         if ($osub == "g") { 
     228                                        if ($osub === "g") { 
    220229                                                echo "\n\t\t\t<td title='Gewanne'><span class='wichtig'>".$unver."</span></td>"; 
    221230                                        } 
     
    243252// ax_Flurstueck  >zeigtAuf>  ax_LagebezeichnungOhneHausnummer 
    244253// ++ auch FlÀchenverschneidung? 
    245 if ($ltyp <> "p") { // Pseudonummer linkt nur GebÀude 
     254if ($ltyp != "p") { // Pseudonummer linkt nur GebÀude 
    246255        echo "\n\n<a id='fs'></a>\n<h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;cke</h3>" 
    247256        ."\n<p>mit dieser Lagebezeichnung.</p>"; 
     
    261270        if (!$resf) { 
    262271                echo "\n<p class='err'>Fehler bei Flurst&uuml;ck.</p>"; 
    263                 if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."<br>$1 = gml_id = '".$gmlid."'</p>";}         
     272                if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".htmlentities(str_replace("$1", "'".$gmlid."'", $sql), ENT_QUOTES, "UTF-8")."</p>";}    
    264273        } 
    265274        echo "\n<table class='fs'>" 
     
    303312// L A G E 
    304313// andere Lage mit gleicher Hausnummer suchen 
    305 if ($ltyp <> "o") { // nicht bei Gewanne (Ohne HsNr) 
     314if ($ltyp != "o") { // nicht bei Gewanne (Ohne HsNr) 
    306315        echo "\n\n<a id='lage'></a>\n<h3><img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''> Lage</h3>" 
    307316        ."\n<p>Andere Lagebezeichnungen zur gleichen Hausnummer.</p>"; 
    308317        $whereclaus="WHERE land= $1 AND regierungsbezirk= $2 AND kreis= $3 AND gemeinde= $4 AND lage= $5 "; 
    309318 
    310         $url=$_SERVER['PHP_SELF']."?gkz=".$gkz; // Basis 
     319        $url=selbstverlinkung()."?gkz=".$gkz; // Basis 
    311320        if ($showkey) {$url.="&amp;showkey=j";} 
    312321        $url.="&amp;gmlid="; 
     
    323332                        $res = pg_execute("", $v); 
    324333                        if (!$res) { 
    325                                 echo "\n<p class='err'>Fehler bei Nebengeb&auml;ude.<br>".$sql."</p>"; 
    326                                 if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."</p>";} 
     334                                echo "\n<p class='err'>Fehler bei Nebengeb&auml;ude.</p>"; 
     335                                if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."</p>";} // 7 $-Parameter 
    327336                        } 
    328337                        $neb=0; 
     
    331340                                $neb++; 
    332341                        } 
    333                         if ($neb == 0) {echo "keine";} 
     342                        if ($neb === 0) {echo "keine";} 
    334343                        echo "</p>"; 
    335344                break; 
     
    349358                                $hg++; 
    350359                        } 
    351                         if ($hg == 0) {echo "&nbsp;Kein Hauptgeb&auml;ude gefunden.";} 
     360                        if ($hg === 0) {echo "&nbsp;Kein Hauptgeb&auml;ude gefunden.";} 
    352361                        echo "</p>"; 
    353362 
     
    360369                        if (!$res) { 
    361370                                echo "\n<p class='err'>Fehler bei Nebengeb&auml;ude.</p>"; 
    362                                 if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."</p>";}                       
     371                                if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."</p>";} // 7 $-Parameter              
    363372                        } 
    364373                        $neb=0; 
     
    367376                                $neb++; 
    368377                        } 
    369                         if ($neb == 0) {echo "keine";} 
     378                        if ($neb === 0) {echo "keine";} 
    370379                        echo "</p>"; 
    371380                break; 
     
    374383 
    375384// G E B A E U D E 
    376 if ($ltyp <> "o") { // OhneHsNr linkt nur Flurst. 
     385if ($ltyp != "o") { // OhneHsNr linkt nur Flurst. 
    377386        echo "\n\n<a id='geb'></a>\n<h3><img src='ico/Haus.png' width='16' height='16' alt=''> Geb&auml;ude</h3>" 
    378387        ."\n<p>mit dieser Lagebezeichnung.</p>"; 
     
    396405        if (!$res) { 
    397406                echo "\n<p class='err'>Fehler bei Geb&auml;ude.</p>"; 
    398                 if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".htmlentities($sql, ENT_QUOTES, "UTF-8")."<br>$1 = gml_id = '".$gmlid."'</p>";} 
     407                if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".htmlentities(str_replace("$1", "'".$gmlid."'", $sql), ENT_QUOTES, "UTF-8")."</p>";} 
    399408        } 
    400409        echo "\n<table class='geb'>" 
     
    444453</div> 
    445454 
    446 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", "&amp;ltyp=".$ltyp); ?> 
     455<?php footer($gmlid, selbstverlinkung()."?", "&amp;ltyp=".$ltyp); ?> 
    447456 
    448457</body> 
Note: See TracChangeset for help on using the changeset viewer.