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/alkisexport.php

    r412 r422  
    2222        -------- 
    2323        2016-02-23      Version fuer norGIS-ALKIS-Import 
    24         2016-10-18      Export einer ganzen Gemarkung zulassen (Sonderfall bei den Parametern) 
    25         2016-11-29      Gemeinsam genutzte Datenbanken ermöglichen 
    26         2017-02-23      Filter mit/ohne Hausnummer zum Typ "strasse". 
    27                                 Dazu muss der View "exp_csv_str" um die spalte "fall" erweitert werden. 
    28         2017-06-08 Validierung Eingabeparameter 
    29         2017-10-11 Sauber filtern auf endet IS NULL 
    30         2017-12-20 Nur eine Adresse zur Person (Siehe Views in "views_exp_csv.sql") 
     24        .... 
    3125        2018-05-03 Aufruf aus neuem GrundstÃŒcksnachweis: tabtyp='buchung', angepasster View "exp_csv" notwendig 
    3226        2018-10-16 Neuer Aufruf-Typ aus der rÀumlichen Selektion, &tabtyp=flstliste&prefix=DENW15&gmlliste=AL...,AL.... 
     27        2020-12-16 Input-Validation und Strict Comparisation (===), BerechtigungsprÃŒfung vorÃŒbergehend deaktiviert 
    3328 
    3429        ToDo: 
     
    5752                if ($j > 0) {$lagehsnr.=", ";} 
    5853                $sneu=$row["bezeichnung"]; 
    59                 if ($sneu == $salt) { // gleiche Str. 
     54                if ($sneu === $salt) { // gleiche Str. 
    6055                        $lagehsnr.=$row["hausnummer"]; // HsNr dran haengen 
    6156                } else { // Name UND HsNr dranhaengen 
     
    7570 
    7671// strikte Validierung aller Parameter 
    77 if ( isset($gmlid) ) { 
     72if (isset($gmlid)) { 
    7873        if ( !preg_match('#^[0-9A-Za-z]{16}$#', $gmlid)) {die("Eingabefehler gmlid");} 
    7974} else { 
     
    8277 
    8378// FS-Limit? x (16+1) =  
    84 if ( isset($gmlliste) ) { 
     79if (isset($gmlliste)) { 
    8580        if (!preg_match("#^[0-9A-Za-z,]{16,2000}$#", $gmlliste)) { 
    86         //      echo "\n<p>gmlliste=".$gmlliste."</p>\n";   // NUR TEST 
    8781                die("Eingabefehler gmlliste"); 
    8882        } 
    8983} 
    9084 
    91 if (!isset($gkz) or !preg_match('#^[0-9]{3}$#', $gkz)) {die("Eingabefehler gkz");} 
     85if (isset($gkz)) { 
     86        if (!preg_match('#^[0-9]{3}$#', $gkz)) {die("Eingabefehler gkz");} 
     87} else { 
     88        die("Fehlender Parameter"); 
     89} 
    9290if (isset($gemarkung)) { 
    9391        if (!preg_match('#^[0-9]{4}$#', $gemarkung)) {die("Eingabefehler gemarkung");} 
     
    9896if (!preg_match('#^[a-z]{0,10}$#', $tabtyp)) {die("Eingabefehler tabtyp");} 
    9997 
    100 require_once("alkis_conf_location.php"); // Konfiguration laden 
    101 include("alkisfkt.php"); // Funktionen der ALKIS-Auskunft laden 
    102  
    103 if ($tabtyp == '') { // Parameter (-kombinationen) pruefen 
     98include "alkis_conf_location.php"; 
     99include "alkisfkt.php"; 
     100 
     101// BerechtigungsprÃŒfung fuer CSV vorÃŒbergehend deaktiviert weil darin HTML-Meldungen ausgegeben werden. 
     102// ggf. dies per Option verhindern und wieder aktivieren. 
     103//$erlaubnis = darf_ich(); if ($erlaubnis === 0) { die('Abbruch'); } 
     104 
     105if ($tabtyp === '') { // Parameter (-kombinationen) pruefen 
    104106        if ($gemarkung != '') { // Dieser Parameters bestimmt auch eindeutig den $tabtyp 
    105107                $tabtyp = 'gemarkung'; 
     
    108110                exit ($err); 
    109111        } 
    110 } elseif ($tabtyp == 'gemarkung') { 
    111         if ($gemarkung == '') { 
     112} elseif ($tabtyp === 'gemarkung') { 
     113        if ($gemarkung === '') { 
    112114                $err="\nFehler: Gemarkungsnummer nicht angeben."; 
    113115                exit ($err); 
     
    116118 
    117119if ($gmlid != '') { // Angabe von gmlid ist der Normalfall, das passt fÃŒr fast jeden tabtyp 
    118         if ($tabtyp == 'strasse' and $haus != '') { // den Zusatzfilter m/o im Dateinamen dokumentieren 
    119                 if ($haus == 'm') { 
     120        if ($tabtyp === 'strasse' and $haus != '') { // den Zusatzfilter m/o im Dateinamen dokumentieren 
     121                if ($haus === 'm') { 
    120122                        $filename='alkis_'.$tabtyp.'_'.$gmlid.'_mit_hsnr.csv'; 
    121123                } else {  // = o 
     
    134136 
    135137/*      // $gmlid zu strasse ist noch notwendig solange kein Filter auf "Gemeinde" verwendet wird. 
    136         } elseif ($haus == 'm' or $haus == 'o') { // Sonderfall 2 - alle mit/ohne Hausnummer, nur ÃŒber View "exp_csv_str" möglich 
     138        } elseif ($haus === 'm' or $haus === 'o') { // Sonderfall 2 - alle mit/ohne Hausnummer, nur ÃŒber View "exp_csv_str" möglich 
    137139                if ($tabtyp != 'strasse') { 
    138140                        $err="\nFehler: Falsche Kombination Parameter tabtyp='".$tabtyp."' mit Wert fuer Haus."; 
    139141                        exit ($err); 
    140142                } 
    141                 if ($haus == 'm') { // den Zusatzfilter m/o im Dateinamen dokumentieren 
     143                if ($haus === 'm') { // den Zusatzfilter m/o im Dateinamen dokumentieren 
    142144                        $filename='alkis_'.$tabtyp.'_mit_hsnr.csv'; 
    143145                } else { 
     
    224226} 
    225227 
    226 if ($haus == 'm' or $haus == 'o') { // nur FS mit/ohne verschl. Lagebez. 
    227 //      if ($gmlid == '') { // m/o-Filter als einziger Filter 
     228if ($haus === 'm' or $haus === 'o') { // nur FS mit/ohne verschl. Lagebez. 
     229//      if ($gmlid === '') { // m/o-Filter als einziger Filter 
    228230//              $sql="SELECT * FROM ".$viewname." WHERE fall='".$haus."' "; // Ersetzen 
    229231//              $v=array(); // kein Filter-Feld 
     
    349351} 
    350352pg_free_result($res); 
    351 if ($i == 1) { // nur Kopf 
    352         if ( $gmlid == '' ) { 
     353if ($i === 1) { // nur Kopf 
     354        if ($gmlid == '') { 
    353355                $err="\nKein Treffer"; 
    354         //      echo "\n".$sql."\n".$v[0]."\n".$dbconn."\n"; 
    355356        } else { 
    356357                $err="\nKein Treffer fuer gml_id='".$gmlid."'"; 
Note: See TracChangeset for help on using the changeset viewer.