[66] | 1 | <?php
|
---|
[85] | 2 | /* Version vom |
---|
[278] | 3 | 2011-10-24 Nach Pos-Klick Highlight erneuern statt hideHighlight |
---|
| 4 | 2011-11-07 optional auch Historische FS suchen, Link auf Buchauskunft-Modul alkisfshis.php |
---|
| 5 | 2011-11-09 "h" hinter Flur oder FlurstÃŒck sucht sofort in Historie |
---|
[128] | 6 | Ausgabe Flur in Varianten aktuell/historisch mit gegenseitigen Verweisen |
---|
[278] | 7 | 2011-11-11 Nachfolger-Liste in der DB nachschlagen, und aktuelle FS als solche kennzeichnen |
---|
| 8 | neue Icons fÃŒr Link mit Pfeil |
---|
| 9 | Differenzierung mit/ohne Raumbezug bei Icons fuer Histor. FS |
---|
| 10 | Gemarkung- und Flur-Zeile vor einzelnem FlurstÃŒck ausgeben |
---|
| 11 | 2011-11-17 Nachweis-Links ÃŒber javascript im neuen Hochformat-Fenster |
---|
| 12 | 2013-04-16 "import_request_variables" entfÀllt in PHP 5.4, |
---|
| 13 | Fehlerkorrektur Komma in SQL bei FS-Suche. |
---|
| 14 | 2013-04-26 Ersetzen View "gemeinde_gemarkung" durch Tabelle "pp_gemarkung" |
---|
| 15 | ZurÃŒck-Link, Titel der Transaktion anzeigen |
---|
[85] | 16 | */ |
---|
[276] | 17 | $cntget = extract($_GET); |
---|
[68] | 18 | include("../../conf/alkisnav_conf.php");
$con_string = "host=".$host." port=".$port." dbname=".$dbname.$dbvers.$gkz." user=".$user." password=".$password;
|
---|
[105] | 19 | $con = pg_connect ($con_string) or die ("Fehler bei der Verbindung zur Datenbank ".$dbname.$dbvers.$gkz); |
---|
| 20 | echo <<<END |
---|
[278] | 21 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
---|
[66] | 22 | <html>
|
---|
| 23 | <head>
|
---|
| 24 | <meta http-equiv="cache-control" content="no-cache">
|
---|
| 25 | <meta http-equiv="pragma" content="no-cache">
|
---|
| 26 | <meta http-equiv="expires" content="0">
|
---|
| 27 | <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
|
---|
| 28 | <title>ALKIS-Suche Flurstück</title>
|
---|
| 29 | <link rel="stylesheet" type="text/css" href="alkisnav.css"></link> |
---|
[129] | 30 | <script type="text/javascript"> |
---|
| 31 | function imFenster(dieURL) { |
---|
| 32 | var link = encodeURI(dieURL); |
---|
| 33 | window.open(link,'','left=10,top=10,width=620,height=800,resizable=yes,menubar=no,toolbar=no,location=no,status=no,scrollbars=yes'); |
---|
| 34 | } |
---|
| 35 | function transtitle(trans) { |
---|
[278] | 36 | document.getElementById('transaktiontitle').innerHTML = trans; |
---|
| 37 | } |
---|
| 38 | </script> |
---|
[129] | 39 | </head>
|
---|
[66] | 40 | <body> |
---|
| 41 | <a title="zurück" href='javascript:history.back()'> |
---|
[278] | 42 | <img src="ico/zurueck.ico" width="16" height="16" alt="<<" /> |
---|
| 43 | </a> |
---|
| 44 | <dfn class='title' id='transaktiontitle'></dfn> |
---|
| 45 | |
---|
[66] | 46 | END; |
---|
[278] | 47 | |
---|
| 48 | function is_ne_zahl($wert) { |
---|
[66] | 49 | // Prueft, ob ein Wert ausschlieÃlich aus den Zahlen 0 bis 9 besteht |
---|
| 50 | if (trim($wert, "0..9") == "") {return true;} else {return false;} |
---|
| 51 | } |
---|
| 52 | |
---|
| 53 | function h_hinten($zahl) { |
---|
[126] | 54 | // Testen: Wurde an eine Zahl ein "h" angehÀngt? |
---|
| 55 | // Wenn ja, dann Schalter setzen und nur numerischen Teil zurÃŒck geben. |
---|
| 56 | global $phist, $debug; |
---|
| 57 | $zahl=trim($zahl); |
---|
[128] | 58 | $zlen=strlen($zahl) - 1; |
---|
[126] | 59 | if ($zlen > 0) { |
---|
[128] | 60 | $hinten = ucfirst(substr($zahl, $zlen, 1)); |
---|
[126] | 61 | if ($hinten == "H" ) { |
---|
| 62 | $vorn=trim(substr($zahl, 0, $zlen)); |
---|
| 63 | if (is_ne_zahl($vorn)) { // Zahl *und* "H" |
---|
| 64 | $zahl = $vorn; |
---|
| 65 | $phist = true; |
---|
| 66 | } |
---|
| 67 | } |
---|
| 68 | } |
---|
| 69 | return $zahl; |
---|
| 70 | } |
---|
| 71 | |
---|
| 72 | function ZerlegungFsKennz($fskennz) {
|
---|
[66] | 73 | // Das eingegebene FlurstÃŒcks-Kennzeichen auseinander nehmen. Erwartet wird gggg-fff-zzzz/nnn |
---|
[126] | 74 | global $debug, $zgemkg, $zflur, $zzaehler, $znenner;
// if ($debug > 1) {echo "<p class='dbg'>Zerlegen: '".$fskennz."'</p>";} |
---|
[66] | 75 | $arr = explode("-", $fskennz, 4); |
---|
[126] | 76 | $zgemkg=trim($arr[0]); |
---|
[66] | 77 | $zflur=h_hinten($arr[1]); |
---|
| 78 | $zfsnr=trim($arr[2]); |
---|
[126] | 79 | if ($debug > 1) {echo "<p class='dbg'>Gemkg: '".$zgemkg."' Flur: '".$zflur."' NR: '".$zfsnr."'</p>";} |
---|
[66] | 80 | |
---|
[126] | 81 | if ($zgemkg == "") { |
---|
| 82 | return 0; // Gemeinden oder Gemarkungen listen |
---|
[66] | 83 | } elseif ( ! is_ne_zahl($zgemkg)) { |
---|
[86] | 84 | return 1; // Such Name |
---|
[66] | 85 | } elseif ($zflur == "") { |
---|
| 86 | return 2; // G-Nr |
---|
| 87 | } elseif ( ! is_ne_zahl($zflur)) { |
---|
| 88 | echo "<p class='err'>Die Flurnummer '".$zflur."' ist nicht numerisch</p>"; |
---|
| 89 | return 9; |
---|
[126] | 90 | } elseif ($zfsnr == "") { |
---|
[86] | 91 | return 3; // Flur |
---|
[126] | 92 | } else { |
---|
[66] | 93 | $zn=explode("/", $zfsnr, 2); |
---|
| 94 | $zzaehler=h_hinten(trim($zn[0])); |
---|
| 95 | $znenner =h_hinten(trim($zn[1])); |
---|
[126] | 96 | if ( ! is_ne_zahl($zzaehler)) { |
---|
| 97 | echo "<p class='err'>FlurstÃŒcksnummer '".$zzaehler."' ist nicht numerisch</p>"; |
---|
[66] | 98 | return 9; |
---|
[126] | 99 | } elseif ($znenner == "") { |
---|
[86] | 100 | return 4; |
---|
[66] | 101 | } elseif (is_ne_zahl($znenner)) { |
---|
| 102 | return 5; |
---|
| 103 | } else { |
---|
| 104 | echo "<p class='err'>FlurstÃŒcks-Nenner '".$znenner."' ist nicht numerisch</p>"; |
---|
| 105 | return 9; |
---|
[126] | 106 | } |
---|
[86] | 107 | } |
---|
[66] | 108 | } |
---|
| 109 | |
---|
| 110 | function gemkg_zeile($zgemkg) { |
---|
| 111 | // Eine Zeile zu Gemarkung ausgeben, SchlÃŒssel wird ÃŒbergeben, Name in DB nachschlagen |
---|
[128] | 112 | global $con, $gkz, $gemeinde, $epsg; |
---|
| 113 | $sql ="SELECT bezeichnung FROM ax_gemarkung g WHERE g.gemarkungsnummer= $1 ;"; |
---|
| 114 | $v=array($zgemkg); |
---|
| 115 | $res=pg_prepare("", $sql); |
---|
| 116 | $res=pg_execute("", $v); |
---|
| 117 | if (!$res) {echo "\n<p class='err'>Fehler bei Gemarkung.</p>";} |
---|
| 118 | $zgmk=0; |
---|
| 119 | while($row = pg_fetch_array($res)) { // eigentlich nur EINE |
---|
| 120 | $gmkg=$row["bezeichnung"]; |
---|
| 121 | $zgmk++; |
---|
| 122 | echo "\n<div class='gk' title='Gemarkung'>"; |
---|
| 123 | echo "\n\t\t<img class='nwlink' src='ico/Gemarkung.ico' width='16' height='16' alt='Gemarkung'>"; |
---|
| 124 | echo " OT <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&fskennz=".$zgemkg."'> ".$gmkg." (".$zgemkg.")</a>"; |
---|
| 125 | echo "\n</div>"; |
---|
| 126 | } |
---|
| 127 | if ($zgmk == 0) { |
---|
| 128 | echo "\n<div class='gk' title='Gemarkung'>"; |
---|
| 129 | echo "\n\t\t<p class='err'><img class='nwlink' src='ico/Gemarkung.ico' width='16' height='16' alt='Gemarkung'>"; |
---|
| 130 | echo " Gemarkung ".$zgemkg." ist unbekannt.</p>"; |
---|
| 131 | echo "\n</div>"; |
---|
| 132 | return; |
---|
| 133 | } |
---|
| 134 | return 0; |
---|
| 135 | } |
---|
| 136 | |
---|
| 137 | function flur_zeile($zgemkg, $zflur) { |
---|
| 138 | // Eine Zeile zur Flur ausgeben |
---|
| 139 | global $con, $gkz, $gemeinde, $epsg; |
---|
| 140 | echo "\n<div class='fl' title='Flur'>"; |
---|
| 141 | echo "\n\t\t<img class='nwlink' src='ico/Flur.ico' width='16' height='16' alt='Flur'> "; |
---|
| 142 | $url=$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&fskennz=".$zgemkg."-".$zflur; |
---|
| 143 | echo "Flur <a href='".$url."'>".$zflur."</a>"; |
---|
| 144 | //echo "<span class='hislnk'>"; |
---|
| 145 | echo " <a class='hislnk' title='Historische Flurstücke' href='".$url."&hist=j'>Hist.</a>"; |
---|
| 146 | echo "\n</div>"; |
---|
| 147 | return 0; |
---|
| 148 | } |
---|
| 149 | |
---|
| 150 | function ListGemeinden() { |
---|
| 151 | // bei Leereingabe die Gemeinden anlisten |
---|
[86] | 152 | global $con, $gkz, $gemeinde, $epsg, $debug, $gfilter; |
---|
[128] | 153 | $linelimit=50; |
---|
[86] | 154 | $sql ="SELECT gemeinde, gemeindename FROM pp_gemeinde "; |
---|
| 155 | switch ($gfilter) { |
---|
[278] | 156 | case 1: // Einzelwert |
---|
[86] | 157 | $sql.="WHERE gemeinde=".$gemeinde." "; |
---|
| 158 | break; |
---|
[278] | 159 | case 2: // Liste |
---|
[86] | 160 | $sql.="WHERE gemeinde in (".$gemeinde.") "; |
---|
| 161 | break; |
---|
[278] | 162 | default: // kein Filter |
---|
[86] | 163 | break; |
---|
| 164 | } |
---|
| 165 | $sql.=" ORDER BY gemeindename LIMIT $1 ;"; |
---|
| 166 | $res=pg_prepare("", $sql); |
---|
[278] | 167 | $res=pg_execute("", array($linelimit)); |
---|
[86] | 168 | if (!$res) { |
---|
| 169 | echo "\n<p class='err'>Fehler bei Gemeinde</p>"; |
---|
| 170 | if ($debug >= 3) {echo "\n<p class='dbg'>".$sql."</p>";} |
---|
| 171 | return 0; |
---|
[126] | 172 | } |
---|
[86] | 173 | $cnt = 0;
|
---|
| 174 | while($row = pg_fetch_array($res)) { |
---|
| 175 | $gemeindename=$row["gemeindename"]; |
---|
| 176 | $stadt=htmlentities($gemeindename, ENT_QUOTES, "UTF-8"); |
---|
[278] | 177 | $bez=urlencode($gemeindename); // Uebergeben an ListGmkgInGemeinde |
---|
| 178 | $gnr=$row["gemeinde"];
echo "\n<div class='gm' title='Gemeinde'>"; |
---|
| 179 | echo "\n\t\t<img class='nwlink' src='ico/Gemeinde.ico' width='16' height='16' alt='Stadt'>"; |
---|
| 180 | echo " Gem. <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&gm=".$gnr."&bez=".$bez."'>"; |
---|
[86] | 181 | echo " ".$stadt."</a> (".$gnr.")"; |
---|
| 182 | echo "\n</div>"; |
---|
| 183 | $cnt++;
|
---|
| 184 | }
|
---|
| 185 | if($cnt == 0){ |
---|
| 186 | echo "\n<p class='anz'>Keine Gemeinde.</p>"; |
---|
| 187 | } elseif($cnt >= $linelimit) { |
---|
| 188 | echo "\n<p class='anz' title='Bitte eindeutiger qualifizieren'>".$cnt." Gemeinden ... und weitere</p>"; |
---|
[278] | 189 | // +++ BlÀttern ? |
---|
[86] | 190 | } elseif($cnt == 1) { // Eindeutig! |
---|
[278] | 191 | return $gnr; |
---|
| 192 | } else { |
---|
[86] | 193 | echo "\n<p class='anz'>".$cnt." Gemeinden</p>"; |
---|
| 194 | } |
---|
[278] | 195 | return 0; |
---|
| 196 | } |
---|
[86] | 197 | |
---|
| 198 | function ListGmkgInGemeinde($gkey) { |
---|
| 199 | // Die (gefuellten) Gemarkungen zu einem Gemeinde-Key (aus Link) listen |
---|
| 200 | global $con, $gkz, $gemeinde, $epsg, $debug, $gfilter, $bez; |
---|
| 201 | $linelimit=70; |
---|
| 202 | $sql ="SELECT gemarkung, gemarkungsname FROM pp_gemarkung "; |
---|
| 203 | $sql.="WHERE gemeinde= $1 ORDER BY gemarkungsname LIMIT $2 ;"; |
---|
| 204 | $res=pg_prepare("", $sql); |
---|
[278] | 205 | $res=pg_execute("", array($gkey, $linelimit)); |
---|
| 206 | if (!$res) { |
---|
[86] | 207 | echo "\n<p class='err'>Fehler bei Gemarkungen</p>"; |
---|
| 208 | if ($debug >= 3) {echo "\n<p class='dbg'>".$sql."</p>";} |
---|
| 209 | return 0; |
---|
| 210 | } |
---|
[126] | 211 | // Hierarchie Dokumentieren, Gemeinde-Name? |
---|
[86] | 212 | echo "\n<div class='gm' title='Gemeinde'>"; |
---|
| 213 | echo "\n\t\t<img class='nwlink' src='ico/Gemeinde.ico' width='16' height='16' alt='Stadt'>"; |
---|
| 214 | echo " Gem. ".$bez." (".$gkey.")"; // .urldecode($bez). ?? |
---|
| 215 | echo "\n</div>"; |
---|
| 216 | $cnt = 0;
|
---|
| 217 | while($row = pg_fetch_array($res)) { |
---|
| 218 | $gnam=htmlentities($row["gemarkungsname"], ENT_QUOTES, "UTF-8");
|
---|
| 219 | $gnr=$row["gemarkung"];
echo "\n<div class='gk' title='Gemarkung'>"; |
---|
| 220 | echo "\n\t\t<img class='nwlink' src='ico/Gemarkung.ico' width='16' height='16' alt='Gemarkung'>"; |
---|
[278] | 221 | echo " OT <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&fskennz=".$gnr."'>"; |
---|
| 222 | echo " ".$gnam."</a> (".$gnr.")"; |
---|
[86] | 223 | echo "\n</div>"; |
---|
| 224 | $cnt++;
|
---|
| 225 | }
|
---|
| 226 | if($cnt == 0){ |
---|
| 227 | echo "\n<p class='anz'>Keine Gemarkung.</p>"; |
---|
| 228 | } elseif($cnt >= $linelimit) { |
---|
| 229 | echo "\n<p class='anz' title='Bitte eindeutiger qualifizieren'>".$cnt." Gemarkungen ... und weitere</p>"; |
---|
| 230 | // +++ BlÀttern ? |
---|
[278] | 231 | } elseif($cnt == 1) { // Eindeutig! |
---|
[86] | 232 | return $gnr; |
---|
[278] | 233 | } else { |
---|
| 234 | echo "\n<p class='anz'>".$cnt." Gemarkungen</p>"; |
---|
[86] | 235 | } |
---|
| 236 | return 0; |
---|
[278] | 237 | } |
---|
| 238 | |
---|
[86] | 239 | function SuchGmkgName() { |
---|
| 240 | // Gemarkung suchen nach Name(-nsanfang) |
---|
| 241 | global $con, $gkz, $gemeinde, $epsg, $debug, $fskennz, $gfilter; |
---|
| 242 | $linelimit=120; |
---|
[66] | 243 | if(preg_match("/\*/",$fskennz)){
|
---|
| 244 | $match = trim(preg_replace("/\*/i","%", strtoupper($fskennz)));
|
---|
[86] | 245 | } else {
|
---|
[66] | 246 | $match = trim($fskennz)."%";
|
---|
| 247 | } |
---|
| 248 | $sql ="SELECT g.gemeinde, g.gemarkung, g.gemarkungsname "; |
---|
| 249 | If ($gfilter == 0 OR $gfilter == 2) { // Stadt anzeigen |
---|
| 250 | $sql.=", s.gemeindename FROM pp_gemarkung g JOIN pp_gemeinde s ON g.gemeinde = s.gemeinde "; |
---|
| 251 | } else { |
---|
[278] | 252 | $sql.="FROM pp_gemarkung g "; |
---|
| 253 | } |
---|
| 254 | $sql.="WHERE g.gemarkungsname ILIKE $1 "; |
---|
| 255 | switch ($gfilter) { |
---|
| 256 | case 1: // Einzelwert |
---|
| 257 | $sql.="AND g.gemeinde = ".$gemeinde." "; |
---|
| 258 | break; |
---|
[85] | 259 | case 2: // Liste |
---|
| 260 | $sql.="AND g.gemeinde in (".$gemeinde.") "; |
---|
[278] | 261 | break; |
---|
[85] | 262 | default: // kein Filter |
---|
| 263 | break; |
---|
[278] | 264 | } |
---|
[85] | 265 | $sql.=" ORDER BY g.gemarkungsname LIMIT $2 ;"; |
---|
| 266 | $v=array($match, $linelimit); |
---|
| 267 | $res=pg_prepare("", $sql); |
---|
| 268 | $res=pg_execute("", $v); |
---|
[278] | 269 | if (!$res) { |
---|
[66] | 270 | echo "\n<p class='err'>Fehler bei Gemarkung</p>"; |
---|
| 271 | if ($debug >= 3) {echo "\n<p class='dbg'>".$sql."</p>";} |
---|
| 272 | return 0; |
---|
| 273 | } |
---|
| 274 | $cnt = 0;
|
---|
[126] | 275 | while($row = pg_fetch_array($res)) { |
---|
[66] | 276 | $gnam=htmlentities($row["gemarkungsname"], ENT_QUOTES, "UTF-8");
|
---|
| 277 | $gnr=$row["gemarkung"]; |
---|
| 278 | |
---|
| 279 | echo "\n<div class='gk' title='Gemarkung'>"; |
---|
[278] | 280 | echo "\n\t\t<img class='nwlink' src='ico/Gemarkung.ico' width='16' height='16' alt='Gemarkung'>"; |
---|
| 281 | echo " OT <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&fskennz=".$gnr."'>"; |
---|
| 282 | echo " ".$gnam."</a> (".$gnr.")"; |
---|
[66] | 283 | switch ($gfilter) { |
---|
[86] | 284 | case 0: // Kein Filter |
---|
| 285 | echo " ".$row["gemeindename"]; |
---|
[68] | 286 | break; |
---|
[85] | 287 | case 2: // Liste |
---|
| 288 | echo " ".$row["gemeindename"]; |
---|
[278] | 289 | break; |
---|
[85] | 290 | default: // Einzelwert |
---|
| 291 | break; |
---|
[278] | 292 | } |
---|
[85] | 293 | echo "\n</div>"; |
---|
| 294 | $cnt++;
|
---|
| 295 | }
|
---|
| 296 | if($cnt == 0){ |
---|
[66] | 297 | echo "\n<p class='anz'>Keine Gemarkung.</p>"; |
---|
| 298 | } elseif($cnt >= $linelimit) { |
---|
| 299 | echo "\n<p class='anz' title='Bitte eindeutiger qualifizieren'>".$cnt." Gemarkungen ... und weitere</p>"; |
---|
| 300 | } elseif($cnt == 1) { // Eindeutig! |
---|
[278] | 301 | return $gnr; |
---|
[66] | 302 | } else { |
---|
[278] | 303 | echo "\n<p class='anz'>".$cnt." Gemarkungen</p>"; |
---|
[66] | 304 | } |
---|
| 305 | return 0; |
---|
[278] | 306 | } |
---|
| 307 | |
---|
[66] | 308 | function EineGemarkung($AuchGemkZeile) { |
---|
| 309 | // Kennzeichen bestehend nur aus Gemarkung-SchlÃŒssel wurde eingegeben |
---|
| 310 | global $con, $gkz, $gemeinde, $epsg, $debug, $zgemkg; |
---|
| 311 | $linelimit=120; // max. Fluren je Gemarkung |
---|
| 312 | if ($AuchGemkZeile) { |
---|
[128] | 313 | $sql ="SELECT bezeichnung FROM ax_gemarkung g WHERE g.gemarkungsnummer= $1 ;"; // WHERE f.land= ? |
---|
[86] | 314 | $v=array($zgemkg); |
---|
[66] | 315 | $res=pg_prepare("", $sql); |
---|
| 316 | $res=pg_execute("", $v); |
---|
| 317 | if (!$res) {echo "\n<p class='err'>Fehler bei Gemarkung.</p>";} |
---|
| 318 | $zgmk=0; |
---|
| 319 | while($row = pg_fetch_array($res)) { |
---|
| 320 | $gmkg=$row["bezeichnung"]; |
---|
| 321 | $zgmk++; |
---|
| 322 | } |
---|
| 323 | if ($zgmk == 0) { |
---|
| 324 | echo "\n<div class='gk' title='Gemarkung'>"; |
---|
| 325 | echo "\n\t\t<p class='err'><img class='nwlink' src='ico/Gemarkung.ico' width='16' height='16' alt='Gemarkung'>"; |
---|
| 326 | echo " Gemarkung ".$zgemkg." ist unbekannt.</p>"; |
---|
| 327 | echo "\n</div>"; |
---|
| 328 | return; |
---|
[86] | 329 | } |
---|
[66] | 330 | // > 1 auch möglich? |
---|
| 331 | echo "\n<div class='gk' title='Gemarkung'>"; |
---|
| 332 | echo "\n\t\t<img class='nwlink' src='ico/Gemarkung.ico' width='16' height='16' alt='Gemarkung'> "; |
---|
| 333 | echo " OT <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&fskennz=".$zgemkg."'>"; |
---|
[86] | 334 | echo $gmkg."</a> (".$zgemkg.")"; // in Gemeinde? |
---|
[66] | 335 | echo "\n</div>"; |
---|
[86] | 336 | } |
---|
| 337 | $sql ="SELECT gemarkungsteilflur AS flur FROM ax_gemarkungsteilflur f "; |
---|
[68] | 338 | $sql.="WHERE gemarkung= $1 ORDER BY gemarkungsteilflur LIMIT $2 ;"; // WHERE f.land= ? |
---|
[66] | 339 | $v=array($zgemkg, $linelimit); |
---|
| 340 | $res=pg_prepare("", $sql); |
---|
| 341 | $res=pg_execute("", $v); |
---|
| 342 | if (!$res) {echo "\n<p class='err'>Fehler bei Flur.</p>";} |
---|
| 343 | $zfl=0; |
---|
| 344 | while($row = pg_fetch_array($res)) { |
---|
| 345 | $flur=$row["flur"]; |
---|
| 346 | echo "\n<div class='fl' title='Flur'>"; |
---|
| 347 | echo "\n\t\t<img class='nwlink' src='ico/Flur.ico' width='16' height='16' alt='Flur'> "; |
---|
| 348 | echo "Flur<a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&fskennz=".$zgemkg."-".$flur."'> ".$flur." </a>"; |
---|
| 349 | echo "\n</div>"; |
---|
| 350 | $zfl++; |
---|
[124] | 351 | } |
---|
[86] | 352 | if($zfl == 0) { |
---|
[66] | 353 | echo "\n<p class='anz'>Keine Flur.</p>"; |
---|
| 354 | } elseif($zfl >= $linelimit) { |
---|
| 355 | echo "\n<p class='anz'>".$zfl." Fluren ... und weitere</p>"; |
---|
| 356 | } elseif($zfl > 1) { |
---|
[278] | 357 | echo "\n<p class='anz'>".$zfl." Fluren</p>"; |
---|
| 358 | } |
---|
| 359 | return; |
---|
| 360 | } |
---|
| 361 | |
---|
[66] | 362 | function EineFlur() { |
---|
| 363 | // Kennzeichen aus Gemarkung und FlurNr wurde eingegeben, dazu aktuelle FlurstÃŒcke suchen |
---|
| 364 | global $con, $gkz, $gemeinde, $epsg, $debug, $scalefs, $auskpath, $zgemkg, $zflur; |
---|
| 365 | $linelimit=600; // Wie groà kann eine Flur sein? |
---|
[126] | 366 | gemkg_zeile($zgemkg); |
---|
[128] | 367 | flur_zeile($zgemkg, $zflur); |
---|
[126] | 368 | |
---|
| 369 | $sql ="SELECT f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.gemeinde, "; |
---|
| 370 | if($epsg == "25832") { // Transform nicht notwendig |
---|
[128] | 371 | $sql.="st_x(st_Centroid(f.wkb_geometry)) AS x, "; |
---|
[66] | 372 | $sql.="st_y(st_Centroid(f.wkb_geometry)) AS y "; |
---|
| 373 | } else { |
---|
[86] | 374 | $sql.="st_x(st_transform(st_Centroid(f.wkb_geometry), ".$epsg.")) AS x, "; |
---|
[189] | 375 | $sql.="st_y(st_transform(st_Centroid(f.wkb_geometry), ".$epsg.")) AS y "; |
---|
| 376 | } |
---|
[128] | 377 | $sql.="FROM ax_flurstueck f WHERE f.gemarkungsnummer= $1 AND f.flurnummer= $2 "; |
---|
[189] | 378 | $sql.="ORDER BY f.zaehler, f.nenner LIMIT $3 ;"; // WHERE f.land= ? |
---|
| 379 | $v=array($zgemkg, $zflur, $linelimit); |
---|
[86] | 380 | $res=pg_prepare("", $sql); |
---|
[66] | 381 | $res=pg_execute("", $v); |
---|
| 382 | if (!$res) {echo "\n<p class='err'>Fehler bei Flur.</p>";} |
---|
| 383 | $zfs=0; |
---|
| 384 | while($row = pg_fetch_array($res)) { |
---|
| 385 | $fs_gml=$row["gml_id"]; |
---|
| 386 | $flur=$row["flurnummer"]; |
---|
| 387 | $fskenn=$row["zaehler"]; |
---|
| 388 | if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // Bruchnummer |
---|
| 389 | $x=$row["x"]; |
---|
| 390 | $y=$row["y"]; |
---|
| 391 | echo "\n<div class='fs'>"; |
---|
| 392 | echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisfsnw.php?gkz=".$gkz."&gmlid=".$fs_gml."\")'>"; |
---|
| 393 | echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Link.ico' width='16' height='16' alt='FS'>"; |
---|
| 394 | echo "\n\t</a> "; |
---|
| 395 | echo "\n\tFlst. <a title='Flurstück positionieren 1:".$scalefs."' href='"; |
---|
[129] | 396 | echo "javascript:"; |
---|
[66] | 397 | echo "transtitle(\"auf Flurstück positioniert\"); "; |
---|
| 398 | echo "parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); "; |
---|
| 399 | echo "parent.parent.showHighlight(".$x.",".$y.");' "; |
---|
[278] | 400 | echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' ";
|
---|
| 401 | echo "onmouseout='parent.parent.hideHighlight()'> ".$fskenn." </a>"; |
---|
| 402 | echo "\n</div>"; |
---|
[115] | 403 | $zfs++; |
---|
[66] | 404 | } |
---|
| 405 | if($zfs == 0) { |
---|
| 406 | echo "\n<p class='anz'>Kein Flurstück.</p>"; |
---|
| 407 | } elseif($zfs >= $linelimit) { |
---|
| 408 | echo "\n<p class='anz'>".$zfs." Flurstücke... und weitere</p>"; |
---|
| 409 | } elseif($zfs > 1) { |
---|
[278] | 410 | echo "\n<p class='anz'>".$zfs." Flurstücke</p>"; |
---|
[66] | 411 | } |
---|
[278] | 412 | return; |
---|
| 413 | } |
---|
| 414 | |
---|
[66] | 415 | function HistFlur() { |
---|
| 416 | // Kennzeichen aus Gemarkung und FlurNr wurde eingegeben |
---|
| 417 | // Die Flur nach historischen FlurstÃŒcken durchsuchen |
---|
| 418 | global $con, $gkz, $gemeinde, $epsg, $debug, $scalefs, $auskpath, $land, $zgemkg, $zflur; |
---|
[126] | 419 | $linelimit=500; |
---|
[128] | 420 | |
---|
| 421 | gemkg_zeile($zgemkg); |
---|
[126] | 422 | echo "\n<div class='fl' title='Flur'>"; |
---|
[128] | 423 | echo "\n\t\t<img class='nwlink' src='ico/Flur.ico' width='16' height='16' alt='Flur-Historie'> "; |
---|
[126] | 424 | $url=$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&fskennz=".$zgemkg."-".$zflur; |
---|
| 425 | echo "Historie: Flur<a title='Aktuelle Flurstücke suchen' href='".$url."'> ".$zflur." </a>"; |
---|
| 426 | echo "\n</div>"; |
---|
| 427 | |
---|
| 428 | $whcl.="WHERE flurstueckskennzeichen like $1 "; |
---|
| 429 | $sql ="SELECT 'h' AS ftyp, gml_id, zaehler, nenner, nachfolgerflurstueckskennzeichen as nachf FROM ax_historischesflurstueck ".$whcl; |
---|
| 430 | $sql.="UNION SELECT 'o' AS ftyp, gml_id, zaehler, nenner, nachfolgerflurstueckskennzeichen as nachf FROM ax_historischesflurstueckohneraumbezug ".$whcl; |
---|
| 431 | $sql.="ORDER BY zaehler, nenner LIMIT $2 ;"; |
---|
| 432 | $fskzwhere =$land.$zgemkg.str_pad($zflur, 3, "0", $STR_PAD_LEFT)."%"; |
---|
| 433 | $v=array($fskzwhere, $linelimit); |
---|
| 434 | $res=pg_prepare("", $sql); |
---|
| 435 | $res=pg_execute("", $v); |
---|
| 436 | if (!$res) {echo "\n<p class='err'>Fehler bei Historie Flur.</p>";} |
---|
| 437 | $zfs=0; |
---|
| 438 | |
---|
| 439 | // Konst. Teil d.URL (Flur), FS anhÀngen |
---|
| 440 | $flurl=$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&hist=j&fskennz=".$zgemkg."-".$zflur."-"; |
---|
| 441 | |
---|
| 442 | while($row = pg_fetch_array($res)) { |
---|
| 443 | $ftyp=$row["ftyp"]; |
---|
| 444 | $fs_gml=$row["gml_id"]; // fuer Buchausk. |
---|
| 445 | $fskenn=$row["zaehler"]; |
---|
| 446 | if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // Bruchnummer |
---|
| 447 | if ($ftyp == "h") { |
---|
| 448 | $ico="Flurstueck_Historisch_Lnk.ico"; |
---|
| 449 | $titl="Historisches Flurstück"; |
---|
| 450 | } else { |
---|
[128] | 451 | $ico="Flurstueck_Historisch_oR_Lnk.ico"; |
---|
| 452 | $titl="Historisches Flurstück ohne Raumbezug"; |
---|
| 453 | } // h: Karte Pos.? |
---|
| 454 | echo "\n<div class='hi' title='".$titl."'>"; // Zeile |
---|
| 455 | // Icon -> Bauchauskunft |
---|
| 456 | echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisfshist.php?gkz=".$gkz."&gmlid=".$fs_gml."\")'>"; |
---|
| 457 | echo "\n\t\t<img class='nwlink' src='ico/".$ico."' width='16' height='16' alt='Hist'>"; |
---|
| 458 | echo "\n\t</a> "; |
---|
[126] | 459 | // Kennzeichen -> weiter in die Historie hinein |
---|
[129] | 460 | echo "\n\tFlst. <a href='".$flurl.$fskenn."'>".$fskenn."</a>"; |
---|
[128] | 461 | echo "\n</div>"; |
---|
[126] | 462 | $zfs++; |
---|
| 463 | } |
---|
| 464 | if($zfs == 0) { |
---|
| 465 | echo "\n<p class='anz'>Kein historisches Flurstück.</p>"; |
---|
| 466 | #if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = ".$fskzwhere."</p>";} |
---|
| 467 | } elseif ($zfs >= $linelimit) { |
---|
| 468 | echo "\n<p class='anz'>".$zfs." historische Flurst. ... und weitere</p>"; |
---|
[278] | 469 | } elseif($zfs > 1) { |
---|
| 470 | echo "\n<p class='anz'>".$zfs." historische Flurstücke</p>"; |
---|
[129] | 471 | } |
---|
[278] | 472 | return; |
---|
| 473 | } |
---|
| 474 | |
---|
[126] | 475 | function EinFlurstueck() { |
---|
| 476 | // FlurstÃŒckskennzeichen wurde komplett bis zum Zaehler eingegeben |
---|
| 477 | // Sonderfall: bei Bruchnummer, mehrere Nenner zum Zaehler |
---|
| 478 | global $con, $gkz, $debug, $scalefs, $epsg, $auskpath, $fskennz, $zgemkg, $zflur, $zzaehler, $znenner; |
---|
[68] | 479 | |
---|
[128] | 480 | gemkg_zeile($zgemkg); |
---|
| 481 | flur_zeile($zgemkg, $zflur); |
---|
[124] | 482 | |
---|
[66] | 483 | $sql ="SELECT f.gml_id, f.flurnummer, f.zaehler, f.nenner, "; |
---|
[128] | 484 | if($epsg == "25832") { // Transform nicht notwendig |
---|
| 485 | $sql.="x(st_Centroid(f.wkb_geometry)) AS x, "; |
---|
| 486 | $sql.="y(st_Centroid(f.wkb_geometry)) AS y "; |
---|
[124] | 487 | } |
---|
[86] | 488 | else { |
---|
| 489 | $sql.="x(st_transform(st_Centroid(f.wkb_geometry), ".$epsg.")) AS x, "; |
---|
[200] | 490 | $sql.="y(st_transform(st_Centroid(f.wkb_geometry), ".$epsg.")) AS y "; |
---|
[86] | 491 | } |
---|
| 492 | $sql.="FROM ax_flurstueck f "; |
---|
| 493 | $sql.="WHERE f.gemarkungsnummer= $1 AND f.flurnummer= $2 AND f.zaehler= $3 "; |
---|
[128] | 494 | If ($znenner != "") {$sql.="AND f.nenner=".$znenner." ";} // wie prepared? |
---|
[86] | 495 | $sql.="ORDER BY f.zaehler, f.nenner;"; |
---|
[128] | 496 | $v=array($zgemkg, $zflur, $zzaehler); |
---|
[66] | 497 | $res=pg_prepare("", $sql); |
---|
| 498 | $res=pg_execute("", $v); |
---|
[128] | 499 | if (!$res) {echo "\n<p class='err'>Fehler bei Flurstück.</p>";} |
---|
[66] | 500 | $zfs=0; |
---|
| 501 | while($row = pg_fetch_array($res)) { |
---|
| 502 | $fs_gml=$row["gml_id"]; |
---|
| 503 | $flur=$row["flurnummer"]; |
---|
| 504 | $fskenn=$row["zaehler"]; |
---|
| 505 | if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // Bruchnummer |
---|
| 506 | $x=$row["x"]; |
---|
| 507 | $y=$row["y"]; |
---|
| 508 | echo "\n<div class='fs'>"; |
---|
| 509 | echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisfsnw.php?gkz=".$gkz."&gmlid=".$fs_gml."\")'>"; |
---|
| 510 | echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Link.ico' width='16' height='16' alt='FS'>"; |
---|
| 511 | echo "\n\t</a> "; |
---|
| 512 | echo "\n\tFlst. <a title='Flurstück positionieren 1:".$scalefs."' href='"; |
---|
[129] | 513 | echo "javascript:"; |
---|
[66] | 514 | echo "transtitle(\"auf Flurstück positioniert\"); "; |
---|
| 515 | echo "parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); ";
|
---|
| 516 | echo "parent.parent.showHighlight(".$x.",".$y.");' "; |
---|
[278] | 517 | echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' ";
|
---|
| 518 | echo "onmouseout='parent.parent.hideHighlight()'>"; |
---|
| 519 | echo $fskenn."</a>"; |
---|
[115] | 520 | echo "\n</div>"; |
---|
[66] | 521 | $zfs++; |
---|
| 522 | } |
---|
[128] | 523 | if($zfs == 0) { |
---|
[66] | 524 | echo "\n<p class='err'>Kein aktuelles Flurstück.</p>"; |
---|
| 525 | // Soll in der Historie weiter gesucht werden? |
---|
| 526 | echo "\n<div class='hi' title='Historie'>"; |
---|
[124] | 527 | echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Historisch.ico' width='16' height='16' alt='Historisches Flurstück'> "; |
---|
| 528 | echo "<a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&fskennz=".$fskennz."&hist=j'>in Historie suchen</a>"; |
---|
| 529 | echo "\n</div>"; |
---|
| 530 | } |
---|
| 531 | return; |
---|
| 532 | } |
---|
| 533 | |
---|
| 534 | function HistFlurstueck() { |
---|
[66] | 535 | // Ein Nachfolger-FS-Kennzeichen soll recherchiert werden. |
---|
| 536 | // Es ist unbekannt, ob dies aktuell ist oder auch schon historisch. |
---|
| 537 | global $con, $gkz, $debug, $scalefs, $epsg, $auskpath, $land, $zgemkg, $zflur, $zzaehler, $znenner; |
---|
[124] | 538 | |
---|
[126] | 539 | gemkg_zeile($zgemkg); |
---|
| 540 | flur_zeile($zgemkg, $zflur); |
---|
[124] | 541 | |
---|
| 542 | // Suche ueber das Flurstueckskennzeichen, gml ist meist unbekannt |
---|
[128] | 543 | $whcl.="WHERE flurstueckskennzeichen= $1 "; |
---|
| 544 | $sql ="SELECT 'a' AS ftyp, gml_id, gemarkungsnummer, flurnummer, zaehler, nenner, null as nachf FROM ax_flurstueck ".$whcl; |
---|
| 545 | $sql.="UNION SELECT 'h' AS ftyp, gml_id, gemarkungsnummer, flurnummer, zaehler, nenner, nachfolgerflurstueckskennzeichen as nachf FROM ax_historischesflurstueck ".$whcl; |
---|
[126] | 546 | $sql.="UNION SELECT 'o' AS ftyp, gml_id, gemarkungsnummer, flurnummer, zaehler, nenner, nachfolgerflurstueckskennzeichen as nachf FROM ax_historischesflurstueckohneraumbezug ".$whcl; |
---|
[124] | 547 | |
---|
| 548 | $fskzwhere =$land.$zgemkg; // Flurst-Kennz. f. Where |
---|
| 549 | $fskzwhere.=str_pad($zflur, 3, "0", $STR_PAD_LEFT); |
---|
| 550 | $fskzwhere.=str_pad($zzaehler, 5, "0", $STR_PAD_LEFT); |
---|
| 551 | if ($znenner == "") {$fskzwhere.="______";} |
---|
| 552 | else {$fskzwhere.=str_pad($znenner, 4, "0", $STR_PAD_LEFT)."__";} |
---|
| 553 | |
---|
| 554 | $v=array($fskzwhere); |
---|
| 555 | $res=pg_prepare("", $sql); |
---|
| 556 | $res=pg_execute("", $v); |
---|
| 557 | if (!$res) {echo "\n<p class='err'>Fehler bei hist. Flurstück.</p>";} |
---|
| 558 | $zfs=0; |
---|
| 559 | while($row = pg_fetch_array($res)) { |
---|
| 560 | $ftyp=$row["ftyp"]; |
---|
| 561 | $fs_gml=$row["gml_id"]; |
---|
| 562 | $gknr=$row["gemarkungsnummer"]; |
---|
| 563 | $flur=$row["flurnummer"]; |
---|
| 564 | $fskenn=$row["zaehler"]; |
---|
| 565 | $nachf=$row["nachf"]; |
---|
| 566 | if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // Bruchnummer |
---|
| 567 | |
---|
| 568 | if ($ftyp == "a") { // aktuelles FS gefunden, Koordinate holen |
---|
| 569 | |
---|
| 570 | // BEGINN +++ als function ? |
---|
| 571 | $sqlk ="SELECT "; |
---|
[126] | 572 | if($epsg == "25832") { // Transform nicht notwendig |
---|
[128] | 573 | $sqlk.="x(st_Centroid(wkb_geometry)) AS x, "; |
---|
| 574 | $sqlk.="y(st_Centroid(wkb_geometry)) AS y "; |
---|
| 575 | } else { |
---|
[124] | 576 | $sqlk.="x(st_transform(st_Centroid(wkb_geometry), ".$epsg.")) AS x, "; |
---|
[128] | 577 | $sqlk.="y(st_transform(st_Centroid(wkb_geometry), ".$epsg.")) AS y "; |
---|
| 578 | } |
---|
[124] | 579 | $sqlk.="FROM ax_flurstueck WHERE gml_id= $1 "; |
---|
[128] | 580 | $v=array($fs_gml); |
---|
| 581 | $resk=pg_prepare("", $sqlk); |
---|
[124] | 582 | $resk=pg_execute("", $v); |
---|
[128] | 583 | if (!$resk) {echo "\n<p class='err'>Fehler bei Koordinate.</p>";} |
---|
[124] | 584 | $zfsk=0; |
---|
[128] | 585 | while($rowk = pg_fetch_array($resk)) { |
---|
| 586 | $x=$rowk["x"]; |
---|
| 587 | $y=$rowk["y"]; |
---|
| 588 | $zfsk++; |
---|
| 589 | } |
---|
| 590 | if ($zfsk == 0) {echo "\n<p class='err'>Kein Treffer bei Koordinate.</p>";} |
---|
| 591 | // ENDE +++ als function ? |
---|
| 592 | |
---|
[124] | 593 | echo "\n<p>aktueller Nachfolger:</p>"; |
---|
[128] | 594 | echo "\n<div class='fs' title='Aktuelles Nachfolger-Flurstück'>"; // Zeile |
---|
| 595 | |
---|
| 596 | // Icon -> Nachweis FS-Hist. in Buchauskunft |
---|
[124] | 597 | echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisfsnw.php?gkz=".$gkz."&gmlid=".$fs_gml."\")'>"; |
---|
[126] | 598 | echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Link.ico' width='16' height='16' alt='FS'>"; |
---|
[124] | 599 | echo "\n\t</a> "; |
---|
| 600 | |
---|
[129] | 601 | // Kennzeichen -> Karte positionieren |
---|
[124] | 602 | echo "\n\tFlst. <a title='Flurstück positionieren 1:".$scalefs."' href='"; |
---|
| 603 | echo "javascript:"; |
---|
| 604 | echo "transtitle(\"auf H-Flurstück positioniert\"); "; |
---|
| 605 | echo "parent.parent.parent.mb_repaintScale(\"mapframe1\",".$x.",".$y.",".$scalefs."); ";
|
---|
| 606 | echo "parent.parent.showHighlight(".$x.",".$y.");' "; |
---|
[278] | 607 | echo "onmouseover='parent.parent.showHighlight(".$x.",".$y.")' ";
|
---|
| 608 | echo "onmouseout='parent.parent.hideHighlight()'>"; |
---|
| 609 | // echo $flur."-".$fskenn."</a>"; |
---|
[124] | 610 | echo $fskenn."</a>"; |
---|
| 611 | |
---|
| 612 | echo "\n</div>"; |
---|
[128] | 613 | |
---|
| 614 | } else { // Historisches FS gefunden (h oder o) |
---|
[124] | 615 | // echo "\n<p>Historisches Flurstück:</p>"; |
---|
| 616 | |
---|
| 617 | if ($ftyp == "h") { |
---|
| 618 | $ico="Flurstueck_Historisch_Lnk.ico"; |
---|
[128] | 619 | $titl="Historisches Flurstück"; |
---|
[124] | 620 | } else { |
---|
[128] | 621 | $ico="Flurstueck_Historisch_oR_Lnk.ico"; |
---|
| 622 | $titl="Historisches Flurstück ohne Raumbezug"; |
---|
| 623 | } // h: Karte Pos.? |
---|
| 624 | echo "\n<div class='hi' title='".$titl."'>"; |
---|
| 625 | echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath."alkisfshist.php?gkz=".$gkz."&gmlid=".$fs_gml."\")'>"; |
---|
| 626 | echo "\n\t\t<img class='nwlink' src='ico/".$ico."' width='16' height='16' alt='Hist'>"; |
---|
| 627 | echo "\n\t</a> Historisches Flst. ".$fskenn."</a>"; |
---|
| 628 | echo "\n</div>"; |
---|
[129] | 629 | |
---|
[128] | 630 | if ($nachf == "") { |
---|
| 631 | echo "\n<p class='err'>keine Nachfolger</p>"; |
---|
[124] | 632 | } else { |
---|
| 633 | echo "\n<p>Nachfolger-Flurstücke:</p>"; |
---|
| 634 | // Die direkten Nachfolger ermitteln |
---|
| 635 | // Nachfolger in DB suchen um den Status aktuell/historisch zu ermitteln |
---|
| 636 | $stri=trim($nachf, "{}"); |
---|
[128] | 637 | $stri="'".str_replace(",", "','", $stri)."'"; |
---|
| 638 | // $whcln.="WHERE flurstueckskennzeichen IN ( $1 ) "; |
---|
| 639 | $whcln.="WHERE flurstueckskennzeichen IN ( ".$stri." ) "; |
---|
[124] | 640 | $sqln ="SELECT 'a' AS ftyp, gml_id, gemarkungsnummer, flurnummer, zaehler, nenner FROM ax_flurstueck ".$whcln; |
---|
[128] | 641 | $sqln.="UNION SELECT 'h' AS ftyp, gml_id, gemarkungsnummer, flurnummer, zaehler, nenner FROM ax_historischesflurstueck ".$whcln; |
---|
| 642 | $sqln.="UNION SELECT 'o' AS ftyp, gml_id, gemarkungsnummer, flurnummer, zaehler, nenner FROM ax_historischesflurstueckohneraumbezug ".$whcln; |
---|
| 643 | // $v=array($stri); |
---|
| 644 | $v=array(); |
---|
| 645 | $resn=pg_prepare("", $sqln); |
---|
| 646 | $resn=pg_execute("", $v); |
---|
| 647 | if (!$resn) {echo "\n<p class='err'>Fehler bei Nachfolger.</p>";} |
---|
| 648 | $zfsn=0; |
---|
| 649 | while($rown = pg_fetch_array($resn)) { |
---|
| 650 | $ftypn=$rown["ftyp"]; |
---|
| 651 | $na_gml=$rown["gml_id"]; |
---|
| 652 | $gknrn=$rown["gemarkungsnummer"]; |
---|
| 653 | $flurn=$rown["flurnummer"]; |
---|
| 654 | $fskennn=$rown["zaehler"]; |
---|
| 655 | if ($rown["nenner"] != "") {$fskennn.="/".$rown["nenner"];} |
---|
| 656 | |
---|
| 657 | switch ($ftypn) { |
---|
| 658 | case "a": |
---|
| 659 | $ico="Flurstueck_Link.ico"; |
---|
[124] | 660 | $titl="Aktuelles Flurstück"; |
---|
[128] | 661 | $hisparm=""; |
---|
| 662 | $auskprog="alkisfsnw"; |
---|
| 663 | // ++ Koordinaten holen? siehe oben "als function" |
---|
| 664 | break; |
---|
| 665 | case "h": |
---|
| 666 | $ico="Flurstueck_Historisch_Lnk.ico"; |
---|
| 667 | $titl="Historisches Flurstück"; |
---|
| 668 | $hisparm="&hist=j"; |
---|
| 669 | $auskprog="alkisfshist"; |
---|
| 670 | break; |
---|
| 671 | case "o": |
---|
| 672 | $ico="Flurstueck_Historisch_oR_Lnk.ico"; |
---|
| 673 | $titl="Historisches Flurstück ohne Raumbezug"; |
---|
| 674 | $hisparm="&hist=j"; |
---|
| 675 | $auskprog="alkisfshist"; |
---|
| 676 | break; |
---|
| 677 | } |
---|
| 678 | $fs=$gknrn."-".$flurn."-".$fskennn; |
---|
| 679 | echo "\n<div class='hn' title='Nachfolger: ".$titl."'>"; |
---|
| 680 | echo "\n\t<a title='Nachweis' href='javascript:imFenster(\"".$auskpath.$auskprog.".php?gkz=".$gkz."&gmlid=".$na_gml."\")'>"; |
---|
| 681 | echo "\n\t\t<img class='nwlink' src='ico/".$ico."' width='16' height='16' alt='FS'>"; |
---|
| 682 | echo "\n\t</a> "; |
---|
| 683 | echo "Flst. <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&gemeinde=".$gemeinde."&epsg=".$epsg."&fskennz=".$fs.$hisparm."'>".$fskennn."</a>"; |
---|
[129] | 684 | echo "\n</div>"; |
---|
[128] | 685 | |
---|
[124] | 686 | $zfsn++; |
---|
[128] | 687 | // Kontrollieren: Wurden auch so viele FS in DB gefunden, wie im Array "Where in()" standen? |
---|
| 688 | } |
---|
[124] | 689 | if ($zfsn == 0) { |
---|
[128] | 690 | echo "\n<p class='err'>keine Nachfolger gefunden</p>"; |
---|
| 691 | if ($debug > 1) {echo "\n<p class='dbg'>SQL=<br>".$sqln."<br>Liste=<br> ".$stri."</p>";} |
---|
[124] | 692 | } |
---|
[128] | 693 | } |
---|
[278] | 694 | } |
---|
| 695 | $zfs++; |
---|
[128] | 696 | } |
---|
[124] | 697 | if($zfs == 0) { |
---|
| 698 | echo "\n<p class='err'>Kein historisches Flurstück.</p>"; |
---|
| 699 | #if ($debug > 2) {echo "\n<p class='dbg'>".$sql."</p>";} |
---|
| 700 | } |
---|
| 701 | return; |
---|
| 702 | } |
---|
[278] | 703 | |
---|
[124] | 704 | // =========== |
---|
| 705 | // Start hier! |
---|
| 706 | // =========== |
---|
| 707 | if(isset($epsg)) { |
---|
[66] | 708 | //if ($debug >= 2) {echo "<p class='dbg'>aktueller EPSG='".$epsg."'</p>";} // aus MB |
---|
| 709 | $epsg = str_replace("EPSG:", "" , $_REQUEST["epsg"]); |
---|
| 710 | } else { |
---|
| 711 | if ($debug >= 1) {echo "\n<p class='dbg'>kein EPSG gesetzt</p>";} |
---|
[126] | 712 | $epsg=$gui_epsg; // aus Conf |
---|
[86] | 713 | } |
---|
[66] | 714 | //if ($debug >= 2) {echo "<p class='dbg'>Filter Gemeinde = ".$gemeinde."</p>";} |
---|
[278] | 715 | if ($gemeinde == "") { |
---|
[66] | 716 | $gfilter = 0; // ungefiltert |
---|
| 717 | } elseif(strpos($gemeinde, ",") === false) { |
---|
[126] | 718 | $gfilter = 1; // Einzelwert |
---|
[85] | 719 | } else { |
---|
| 720 | $gfilter = 2; // Liste |
---|
| 721 | } |
---|
| 722 | if ($hist == "j") {$phist = true;} else {$phist = false;} |
---|
| 723 | |
---|
| 724 | if(isset($gm)) { // Self-Link aus Gemeinde-Liste |
---|
| 725 | $trans="Gemarkungen zur Gemeinde"; |
---|
[126] | 726 | $gnr=ListGmkgInGemeinde($gm); |
---|
[66] | 727 | if ($gnr > 0) { |
---|
[278] | 728 | $zgemkg=$gnr; |
---|
| 729 | EineGemarkung(false); |
---|
| 730 | } |
---|
[66] | 731 | } else { // Die Formular-Eingabe interpretieren (kann auch ein Link sein) |
---|
| 732 | $retzer=ZerlegungFsKennz($fskennz); |
---|
| 733 | #if ($debug > 1) {echo "<p class='dbg'>Return Zerlegung (case) = '".$retzer."'</p>";} |
---|
[126] | 734 | switch ($retzer) { |
---|
[278] | 735 | case 0: // leere Eingabe |
---|
[126] | 736 | if ($gfilter == 1) { // Die GUI ist bereits auf eine Gemeinde gefiltert |
---|
[278] | 737 | $trans="Liste der Gemarkungen"; |
---|
[126] | 738 | SuchGmkgName(); |
---|
[86] | 739 | } else { |
---|
| 740 | $trans="Liste der Gemeinden"; |
---|
[278] | 741 | ListGemeinden(); |
---|
| 742 | } |
---|
[86] | 743 | break; |
---|
[278] | 744 | case 1: |
---|
| 745 | #if ($debug >= 2) {echo "<p class='dbg'>Gemarkungsname ".$zgemkg."</p>";} |
---|
[86] | 746 | $trans="Suche Gemarkungsname"; |
---|
[124] | 747 | $gnr=SuchGmkgName(); |
---|
[86] | 748 | if ($gnr > 0) { |
---|
[278] | 749 | $trans="1 Gemarkung, Fluren dazu"; |
---|
| 750 | $zgemkg=$gnr; |
---|
[86] | 751 | EineGemarkung(false); |
---|
| 752 | } |
---|
[278] | 753 | break; |
---|
[86] | 754 | case 2: |
---|
| 755 | #if ($debug >= 2) {echo "<p class='dbg'>Gemarkungsnummer ".$zgemkg."</p>";} |
---|
[126] | 756 | $trans="Fluren in Gemarkung"; |
---|
[124] | 757 | EineGemarkung(true); |
---|
[86] | 758 | break; |
---|
[278] | 759 | case 3: |
---|
| 760 | #if ($debug >= 2) {echo "<p class='dbg'>Gemarkung ".$zgemkg." Flur ".$zflur."</p>";} |
---|
[86] | 761 | if ($phist) { |
---|
[124] | 762 | $trans="historische Flurst. in Flur"; |
---|
[86] | 763 | HistFlur(); |
---|
[278] | 764 | } else { |
---|
| 765 | $trans="Flurstücke in Flur"; |
---|
| 766 | EineFlur(); |
---|
| 767 | } |
---|
| 768 | break; |
---|
| 769 | case 4: |
---|
| 770 | #if ($debug >= 2) {echo "<p class='dbg'>Gemarkung ".$zgemkg." Flur ".$zflur." FlurstÃŒck ".$zzaehler."</p>";} |
---|
| 771 | if ($phist) { |
---|
[124] | 772 | $trans="historisches Flurstück"; |
---|
[86] | 773 | HistFlurstueck(); |
---|
[278] | 774 | } else { |
---|
| 775 | $trans="Flurstück"; |
---|
| 776 | EinFlurstueck(); |
---|
| 777 | } |
---|
| 778 | break; |
---|
| 779 | case 5: |
---|
| 780 | if ($phist) { |
---|
| 781 | $trans="historisches Flurstück"; |
---|
[124] | 782 | HistFlurstueck(); |
---|
[86] | 783 | } else { |
---|
[278] | 784 | $trans="Flurstück"; |
---|
| 785 | EinFlurstueck(); |
---|
| 786 | } |
---|
| 787 | break; |
---|
| 788 | case 9: |
---|
| 789 | $trans="falsche Eingabe"; |
---|
| 790 | echo "\n<p class='err'>Bitte ein Flurstückskennzeichen eingegeben, Format 'gggg-fff-zzzz/nnn</p>"; |
---|
[124] | 791 | break; |
---|
[86] | 792 | } |
---|
[278] | 793 | } |
---|
| 794 | // Titel im Kopf anzeigen |
---|
[124] | 795 | echo "\n<script type='text/javascript'>\n\ttranstitle('".$trans."')\n</script>"; |
---|
[86] | 796 | |
---|
[66] | 797 | ?> |
---|
[278] | 798 |
|
---|
| 799 | </body>
|
---|
| 800 | </html> |
---|