Index: trunk/info/info/alkisn/alkisfkt.php
===================================================================
--- trunk/info/info/alkisn/alkisfkt.php	(revision 375)
+++ trunk/info/info/alkisn/alkisfkt.php	(revision 377)
@@ -9,4 +9,5 @@
 	2016-03-03 Hinweis auf Datenfehler wenn "ax_person" fehlt in function "eigentuemer"
 	2016-03-14 Kleine Korrekturen
+	2016-11-29 Gemeinsam genutzte Datenbanken ermÃ¶glichen (Filter Gemeinde)
 */
 
@@ -89,4 +90,6 @@
 	$kurz=ltrim($kurz, "0"); // fuehrende Nullen am Anfang
 	$kurz=str_replace(".0",".",$kurz); // fuehrende Null jeder Stufe
+	$kurz=rtrim($kurz); // Leerzeichen hinten
+	// echo "/n<p class='dbg'> lang='".$lang."'</p>/n<p class='dbg'> kurz='".$kurz."'</p>";
 	return $kurz;
 }
@@ -97,6 +100,6 @@
 	Die Funktion wird je einmal aufgerufen fÃŒr die Buchungen direkt auf dem GB (Normalfall).
 	Weiterere Aufrufe ggf. bei Erbbaurecht fÃŒr die mit "an" verknuepften Buchungsstellen.
-	Table-Tag und Kopfzeile im aufrufenden Programm. */
-	global $debug, $gkz, $showkey;
+	Table-Tag und Tabellenkopf werden im aufrufenden Programm ausgegeben. */
+	global $debug, $gkz, $showkey, $filtkreis, $filtgem;
 
 	// F L U R S T U E C K
@@ -104,7 +107,12 @@
 	FROM ax_flurstueck f JOIN ax_buchungsstelle s ON f.istgebucht=s.gml_id 
 	LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer 
-	WHERE s.gml_id= $1 AND f.endet IS NULL AND s.endet IS NULL AND g.endet IS NULL ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;";
-
-	$v = array($gml_bs);
+	WHERE f.endet IS NULL AND s.endet IS NULL AND g.endet IS NULL AND s.gml_id= $1 ";
+	if ($filtgem == '' ) { // ungefiltert
+		$v=array($gml_bs);
+	} else {
+		$sql.="AND f.kreis = $2 AND f.gemeinde = $3 "; // ZustÃ€ndiges Gebiet
+		$v=array($gml_bs, $filtkreis, $filtgem);
+	}
+	$sql.="ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;";
 	$resf = pg_prepare("", $sql);
 	$resf = pg_execute("", $v);
@@ -113,4 +121,6 @@
 	if($bvnraus) { // nur bei direkten Buchungen die lfdNr ausgeben
 		$bvnr=str_pad($lfdnr, 4, "0", STR_PAD_LEFT);
+	} else {
+		$bvnr="";
 	}
 	$altlfdnr="";
@@ -133,6 +143,5 @@
 			} else { // Sprungmarke, BVNR
 				echo "\n\t<td>"
-					."<a name='bvnr".$lfdnr."'></a>"
-					."<span class='wichtig'>".$bvnr."</span>"
+					."<a id='bvnr".$lfdnr."'></a><span class='wichtig'>".$bvnr."</span>" /// ++++ FEHLER?? $bvnr
 				."</td>";
 
@@ -205,22 +214,20 @@
 
 	if (!$resn) {
-		echo "<p class='err'>Fehler bei Eigent&uuml;mer</p>\n";
+		echo "\n<p class='err'>Fehler bei Eigent&uuml;mer</p>\n";
 		if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sqln."<br>$1=gml= '".$gmlid."'</p>";}
 	}
 
-	echo "\n\n<table class='eig'>";
+	echo "\n<table class='eig'>";
 	$n=0; // Z.NamNum.
 
 	while($rown = pg_fetch_array($resn)) {
 		$gmlnn=$rown["gml_id"];
-		echo "\n<tr>";
-			echo "\n\t<td class='nanu' title='Namens-Nummer'>\n\t\t<p>"; // Sp. 1
-				// VOR die Tabelle: "EigentÃŒmer"
-				$namnum=kurz_namnr($rown["lfd"]);
-				echo $namnum."&nbsp;";
-			echo "</p>\n\t</td>";
-
-			echo "\n\t<td>"; // Sp. 2
-			$rechtsg=$rown["adr"];
+		$namnum=kurz_namnr($rown["lfd"]);
+		$rechtsg=$rown["adr"];
+		echo "\n<tr>"
+			."\n\t<td class='nanu' title='Namens-Nummer'>\n\t\t<p>" // Sp. 1
+				.$namnum."&nbsp;" // VOR die Tabelle: "EigentÃŒmer"
+			."</p>\n\t</td>"
+			. "\n\t<td>"; // Sp. 2
 			if ($rechtsg != "" ) {
 				if ($rechtsg == 9999) { // sonstiges
@@ -261,6 +268,5 @@
 		$i=0; // cnt Person
 		while($rowp = pg_fetch_array($resp)) { // Schleife weglassen? nn >benennt> Person ist KEIN Array!
-			$diePerson="";
-		//	+++ Anrede?
+			$diePerson=""; //++ Anrede?
 			if ($rowp["akademischergrad"] <> "") {$diePerson=$rowp["akademischergrad"]." ";}
 			$diePerson.=$rowp["nachnameoderfirma"];
@@ -271,6 +277,5 @@
 			$diePerson=htmlentities($diePerson, ENT_QUOTES, "UTF-8"); // Umlaute
 
-			// Spalte 1 enthÃ€lt die Namensnummer, nur in Zeile 0
-			if ($i > 0) {
+			if ($i > 0) { // Spalte 1 enthÃ€lt die Namensnummer, nur in Zeile 0
 				echo "\n<tr>\n\t<td>&nbsp;</td>\n\t<td>";
 			}
@@ -287,7 +292,7 @@
 				echo "\n\t\t<a href='".$lnkvor."alkisnamstruk.php?gkz=".$gkz."&amp;gmlid=".$rowp[0];
 				if ($showkey)   {echo "&amp;showkey=j";}
-				echo $lnknach."' title='vollst&auml;ndiger Name und Adresse eines Eigent&uuml;mers'>".$eiart;
-				echo " <img src='ico/Eigentuemer.png' width='16' height='16' alt=''></a>\n\t\t</p>";
-			echo "\n\t</td>\n</tr>";
+				echo $lnknach."' title='vollst&auml;ndiger Name und Adresse eines Eigent&uuml;mers'>".$eiart
+				." <img src='ico/Eigentuemer.png' width='16' height='16' alt=''></a>\n\t\t</p>"
+			."\n\t</td>\n</tr>";
 
 			if ($mitadresse) {
@@ -343,7 +348,7 @@
 				$nenner=str_replace(".", ",", $rown["nenner"]);
 				$comnt="Anteil der Berechtigten in Bruchteilen (Par. 47 GBO) an einem gemeinschaftlichen Eigentum (Grundst&uuml;ck oder Recht).";
-				echo "\n<tr>\n\t<td>&nbsp;</td>"; // Sp. 1
-				echo "\n\t<td><p class='avh' title='".$comnt."'>".$zaehler."/".$nenner." Anteil</p></td>";
-				echo "\n\t<td>&nbsp;</td>\n</tr>"; // Sp. 3
+				echo "\n<tr>\n\t<td>&nbsp;</td>" // Sp. 1
+				."\n\t<td><p class='avh' title='".$comnt."'>".$zaehler."/".$nenner." Anteil</p></td>"
+				."\n\t<td>&nbsp;</td>\n</tr>"; // Sp. 3
 			}
 		} // End Loop Person
@@ -353,21 +358,21 @@
 			} else {
 				if ($debug > 1) { // nur bei Entwicklung
-					echo "\n<p class='dbg'>Rechtsgemeinschaft = '".$rechtsg."'</p>";
-				}
-			}
-			echo "</td>\n\t<td>&nbsp;</td>\n<tr>";
+					echo "\n\t\t<p class='dbg'>Rechtsgemeinschaft = '".$rechtsg."'</p>";
+				}
+			}
+			echo "</td>\n\t<td>&nbsp;</td>\n</tr>";
 		}
 		$n++; // cnt NamNum
 	} // End Loop NamNum
-	echo "\n</table>\n";
+	echo "\n</table>";
 	if ($n == 0) { // bei "Fiktives Blatt" KEIN Fehler 
 		if ($debug > 1) {
-			echo "<p class='dbg'>keine Namensnummern zum Blatt</p>";
-			if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sqln."<br>$1=gml(Blatt)= '".$gmlid."'</p>";}
+			echo "\n<p class='dbg'>keine Namensnummern zum Blatt</p>";
+			if ($debug > 2) {echo "\n<p class='dbg'>SQL=<br>".$sqln."<br>$1=gml(Blatt)= '".$gmlid."'</p>";}
 		}
 	}
 	pg_free_result($resn);
 	return $n; 
-} // End Function eigentuemer
+} // End function eigentuemer
 
 ?>
Index: trunk/info/info/alkisn/alkisstrasse.php
===================================================================
--- trunk/info/info/alkisn/alkisstrasse.php	(revision 375)
+++ trunk/info/info/alkisn/alkisstrasse.php	(revision 377)
@@ -8,4 +8,5 @@
 	Version:
 	2016-02-24 Version fuer norGIS-ALKIS-Import
+	2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermÃ¶glichen, SQL optimiert (FS-Liste jetzt schneller)
 */
 session_start();
@@ -19,12 +20,8 @@
 if ($keys == "j") {$showkey=true;} else {$showkey=false;}
 ?>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
+<!doctype html>
+<html lang="de">
 <head>
-	<meta name="author" content="b600352" >
-	<meta http-equiv="cache-control" content="no-cache">
-	<meta http-equiv="pragma" content="no-cache">
-	<meta http-equiv="expires" content="0">
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+	<meta charset="utf-8">
 	<title>ALKIS Stra&szlig;e</title>
 	<link rel="stylesheet" type="text/css" href="alkisauszug.css">
@@ -41,5 +38,5 @@
 <body>
 <?php
-$con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
+$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisstrasse.php'");
 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n";
 
@@ -60,5 +57,4 @@
 	if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}
 }
-
 if ($row = pg_fetch_array($res)) {
 	$lage=$row["lage"]; // Strassenschluessel
@@ -85,26 +81,20 @@
 	."\n\t</tr>"
 	."\n\t<tr>";
-
 		echo "\n\t\t<td title='Bundesland'>";
 		if ($showkey) {echo "<span class='key'>".$row["land"]."</span><br>";}
-		echo $row["bnam"]."&nbsp;</td>";
-
-		echo "\n\t\t<td title='Regierungsbezirk'>";
+		echo $row["bnam"]."&nbsp;</td>"
+		."\n\t\t<td title='Regierungsbezirk'>";
 		if ($showkey) {echo "<span class='key'>".$row["regierungsbezirk"]."</span><br>";}
-		echo $row["rnam"]."&nbsp;</td>";
-
-		echo "\n\t\t<td title='Kreis'>";
+		echo $row["rnam"]."&nbsp;</td>"
+		."\n\t\t<td title='Kreis'>";
 		if ($showkey) {echo "<span class='key'>".$row["kreis"]."</span><br>";}
-		echo $row["knam"]."&nbsp;</td>";
-
-		echo "\n\t\t<td title='Gemeinde'>";
+		echo $row["knam"]."&nbsp;</td>"
+		."\n\t\t<td title='Gemeinde'>";
 		if ($showkey) {echo "<span class='key'>".$gem."</span><br>";}
-		echo $row["gnam"]."&nbsp;</td>";
-
-		echo "\n\t\t<td title='Stra&szlig;e'>";
+		echo $row["gnam"]."&nbsp;</td>"
+		. "\n\t\t<td title='Stra&szlig;e'>";
 		if ($showkey) {echo "<span class='key'>".$lage."</span><br>";}
-		echo "<span class='wichtig'>".$snam."</span>";
-
-		echo "&nbsp;</td>"
+		echo "<span class='wichtig'>".$snam."</span>"
+		. "&nbsp;</td>"
 	."\n\t</tr>"
 ."\n\t</table>";
@@ -127,5 +117,5 @@
 
 // F L U R S T U E C K E
-echo "\n\n<a name='fs'></a><h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;cke</h3>\n";
+echo "\n\n<a id='fs'></a><h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;cke</h3>\n";
 echo "\n<p>Zusammenfassung von 'Lage mit Hausnummer' und 'Lage ohne Hausnummer' an dieser StraÃe</p>";
 
@@ -133,17 +123,15 @@
 // ax_Flurstueck >zeigtAuf> ax_LagebezeichnungOhneHausnummer > = Strasse
 // Suchkriterium: gml_id aus Katalog
-$subquery = "SELECT f1.gml_id AS fsgml, lm.gml_id AS lgml, lm.land, lm.regierungsbezirk, lm.kreis, lm.gemeinde, lm.lage, lm.hausnummer 
- FROM ax_flurstueck f1 JOIN ax_lagebezeichnungmithausnummer lm ON lm.gml_id=ANY(f1.weistAuf) 
- WHERE f1.endet IS NULL AND lm.endet IS NULL
-UNION SELECT f2.gml_id AS fsgml, '' AS lgml, lo.land, lo.regierungsbezirk, lo.kreis, lo.gemeinde, lo.lage, '' AS hausnummer 
- FROM ax_flurstueck f2 JOIN ax_lagebezeichnungohnehausnummer lo ON lo.gml_id=ANY(f2.zeigtauf) 
- WHERE f2.endet IS NULL AND lo.endet IS NULL";
-
-$sql="SELECT g.gemarkungsnummer, g.bezeichnung, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, duett.lgml, duett.hausnummer 
- FROM ax_flurstueck f JOIN ( ".$subquery." ) AS duett ON f.gml_id=duett.fsgml 
+$sql="SELECT f.gemarkungsnummer, g.bezeichnung, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, l.gml_id AS lgml, l.hausnummer, 'm' AS ltyp
+ FROM ax_flurstueck f JOIN ax_lagebezeichnungmithausnummer l ON l.gml_id=ANY(f.weistAuf) 
  JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer 
- JOIN ax_lagebezeichnungkatalogeintrag s ON duett.land=s.land AND duett.regierungsbezirk=s.regierungsbezirk AND duett.kreis=s.kreis AND duett.gemeinde=s.gemeinde AND duett.lage=s.lage 
-WHERE s.gml_id = $1 AND f.endet IS NULL AND s.endet IS NULL 
-ORDER BY f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner;";
+ JOIN ax_lagebezeichnungkatalogeintrag s ON l.land=s.land  AND l.regierungsbezirk=s.regierungsbezirk AND l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage 
+ WHERE s.gml_id = $1 AND f.endet IS NULL AND s.endet IS NULL AND l.endet IS NULL
+UNION SELECT f.gemarkungsnummer, g.bezeichnung, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, l.gml_id AS lgml, '' AS hausnummer, 'o' AS ltyp
+ FROM ax_flurstueck f JOIN ax_lagebezeichnungohnehausnummer l ON l.gml_id=ANY(f.zeigtauf) 
+ JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer 
+ JOIN ax_lagebezeichnungkatalogeintrag s ON l.land=s.land AND l.regierungsbezirk=s.regierungsbezirk AND l.kreis=s.kreis AND l.gemeinde=s.gemeinde AND l.lage=s.lage 
+ WHERE s.gml_id = $1 AND f.endet IS NULL AND s.endet IS NULL AND l.endet IS NULL
+ORDER BY gemarkungsnummer, flurnummer, zaehler, nenner;";
 
 $v=array($gmlid);
@@ -157,7 +145,7 @@
 echo "\n<table class='fs'>"
 ."\n<tr>"
-	."\n\t<td class='head' title='Name der Gemarkung (Ortsteil)'>Gemarkung</td>"
-	."\n\t<td class='head' title='Flur-Nummer'>Flur</td>"
-	."\n\t<td class='head' title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'>Flurst.</td>"
+	."\n\t<td class='heads' title='Name der Gemarkung (Ortsteil)'>Gemarkung<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>"
+	."\n\t<td class='heads' title='Flur-Nummer'>Flur<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>"
+	."\n\t<td class='heads' title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'>Flurst.</td>"
 	."\n\t<td class='head fla' title='amtliche Fl&auml;che in Quadratmeter'>Fl&auml;che</td>"
 	."\n\t<td class='head hsnr' title='Hausnummer aus der Lagebezeichnung des Flurst&uuml;cks'>HsNr.</td>"
@@ -176,4 +164,5 @@
 	$flae=number_format($rowf["amtlicheflaeche"],0,",",".") . " m&#178;";
 	$lgml=$rowf["lgml"]; // ID von "Lage Mit" oder leer
+	$ltyp=$rowf["ltyp"]; // mit/ohne HsNr
 
 	echo "\n<tr>"
@@ -200,6 +189,8 @@
 		."\n\t<td>\n\t\t<p class='nwlink noprint'>";
 
+			// Link "Lage"
+// ++++ FEHLER kann auch Typ "o" sein
 			if ($lgml != '') {
-				echo "\n\t\t<a href='alkislage.php?gkz=".$gkz."&amp;ltyp=m&amp;gmlid=".$lgml;
+				echo "\n\t\t<a href='alkislage.php?gkz=".$gkz."&amp;ltyp=".$ltyp."&amp;gmlid=".$lgml;
 				if ($showkey) {echo "&amp;showkey=j";}
 				echo "' title='Lage Mit Hausnummer'>Lage <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a>&nbsp;";
@@ -207,8 +198,8 @@
 			}
 
+			// Link FlurstÃŒcksnachweis
 			echo "\n\t\t<a href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$rowf["gml_id"]."&amp;eig=n";
 			if ($showkey) {echo "&amp;showkey=j";}
 			echo "' title='Flurst&uuml;cksnachweis'>Flurst&uuml;ck <img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''></a>";
-
 		echo "\n\t\t</p>\n\t</td>"
 	."\n</tr>";
@@ -224,12 +215,10 @@
 ?>
 
-<form action=''>
-	<div class='buttonbereich noprint'>
-	<hr>
-		<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
-		<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
-		<a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download.png" width="16" height="16" alt="Export"></a>&nbsp;
-	</div>
-</form>
+<div class='buttonbereich noprint'>
+<hr>
+	<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
+	<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
+	<a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download.png" width="16" height="16" alt="Export"></a>&nbsp;
+</div>
 
 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?>
Index: trunk/info/info/alkisn/alkisinlaybaurecht.php
===================================================================
--- trunk/info/info/alkisn/alkisinlaybaurecht.php	(revision 375)
+++ trunk/info/info/alkisn/alkisinlaybaurecht.php	(revision 377)
@@ -6,4 +6,5 @@
 	Version:
 	2016-02-24 Version fuer norGIS-ALKIS-Import
+	2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen
 */
 session_start();
@@ -12,12 +13,8 @@
 if ($auth == "mapbender") {require_once($mapbender);}
 ?>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
+<!doctype html>
+<html lang="de">
 <head>
-	<meta name="author" content="b600352" >
-	<meta http-equiv="cache-control" content="no-cache">
-	<meta http-equiv="pragma" content="no-cache">
-	<meta http-equiv="expires" content="0">
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+	<meta charset="utf-8">
 	<title>ALKIS Bau-, Raum- oder Bodenordnungsrecht</title>
 	<link rel="stylesheet" type="text/css" href="alkisauszug.css">
@@ -34,7 +31,8 @@
 
 <?php
-$con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
+$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisinlaybaurecht.php'");
 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n";
 
+// Keine Spalten, die eine Berechtigungsprüfung nach Gemeinde ermöglichen:
 $sql ="SELECT r.ogc_fid, r.name, r.stelle, r.bezeichnung AS rechtbez, a.v AS adfbez, d.bezeichnung AS stellbez, round(st_area(r.wkb_geometry)::numeric,0) AS flae 
 FROM ax_bauraumoderbodenordnungsrecht r 
Index: trunk/info/info/alkisn/alkisbaurecht.php
===================================================================
--- trunk/info/info/alkisn/alkisbaurecht.php	(revision 375)
+++ trunk/info/info/alkisn/alkisbaurecht.php	(revision 377)
@@ -5,4 +5,5 @@
 	Version:
 	2016-02-24 Version fuer norGIS-ALKIS-Import
+	2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermöglichen
 */
 session_start();
@@ -13,14 +14,9 @@
 $keys = isset($_GET["showkey"]) ? $_GET["showkey"] : "n";
 if ($keys == "j") {$showkey=true;} else {$showkey=false;}
-
-?>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
+echo <<<END
+<!doctype html>
+<html lang="de">
 <head>
-	<meta name="author" content="b600352" >
-	<meta http-equiv="cache-control" content="no-cache">
-	<meta http-equiv="pragma" content="no-cache">
-	<meta http-equiv="expires" content="0">
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+	<meta charset="utf-8">
 	<title>ALKIS Bau-, Raum- oder Bodenordnungsrecht</title>
 	<link rel="stylesheet" type="text/css" href="alkisauszug.css">
@@ -28,7 +24,8 @@
 </head>
 <body>
+END;
 
-<?php
-$con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
+
+$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisbaurecht.php'");
 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n";
 
@@ -49,5 +46,4 @@
 	if ($debug > 2) {echo "\n<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid."</p>\n";}
 }
-
 if ($row = pg_fetch_array($res)) {
 	$artfest=$row["adfkey"];  // Art der Festlegung, Key
@@ -112,6 +108,12 @@
 $sql ="SELECT f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, round(st_area(ST_Intersection(r.wkb_geometry,f.wkb_geometry))::numeric,1) AS schnittflae 
 FROM ax_flurstueck f, ax_bauraumoderbodenordnungsrecht r
-WHERE r.gml_id= $1 AND f.endet IS NULL AND r.endet IS NULL
-AND st_intersects(r.wkb_geometry,f.wkb_geometry) = true 
+WHERE r.gml_id= $1 AND f.endet IS NULL AND r.endet IS NULL ";
+if ($filtgem == '' ) { // ungefiltert
+	$v=array($gmlid);
+} else {
+	$sql.="AND f.kreis = $2 AND f.gemeinde = $3 "; // Zuständiges Gebiet
+	$v=array($gmlid, $filtkreis, $filtgem);
+}
+$sql.="AND st_intersects(r.wkb_geometry,f.wkb_geometry) = true 
 AND st_area(st_intersection(r.wkb_geometry,f.wkb_geometry)) > 0.05 
 ORDER BY schnittflae DESC LIMIT 50;"; 
@@ -119,11 +121,10 @@
 // Limit: Flurbereinig. kann gross werden!
 // Trotz Limit lange Antwortzeit, wegen OrderBy -> intersection
-$v=array($gmlid);
+
 $res=pg_prepare("", $sql);
 $res=pg_execute("", $v);
-
 if (!$res) {
 	echo "\n<p class='err'>Keine Flurst&uuml;cke ermittelt.<br>\nSQL=<br></p>\n";
-	if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid."</p>\n";}
+//	if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid."</p>\n";}
 }
 
@@ -131,5 +132,5 @@
 	."\n<tr>"
 		."\n\t<td class='head' title='Flur- und Flurst&uuml;cksnummer'>Flurst&uuml;ck</td>"
-		."\n\t<td class='head fla' title='geometrische Schnittfl&auml;che'>Fl&auml;che</td>"
+		."\n\t<td class='heads fla' title='geometrische Schnittfl&auml;che'><img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'>Fl&auml;che</td>"
 		."\n\t<td class='head fla' title='amtliche Flurst&uuml;cksfl&auml;che, Buchfl&auml;che'>von</td>"
 		."\n\t<td class='head nwlink' title='Link zum Flurst&uuml;ck'>weitere Auskunft</td>"
@@ -156,5 +157,12 @@
 echo "\n</table>";
 
-if ($fscnt == 50) {
+if ($fscnt == 0) { // nicht gefunden
+	if ($filtgem == '' ) { // ungefiltert
+		echo "<p class='err'>Kein Flurst&uuml;ck gefunden.</p>";
+	} else { // Wahrscheinliche Ursache = Filter
+		echo "<p class='err'>Kein Flurst&uuml;ck im berechtigten Bereich.</p>";
+	//	if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = ".$gmlid." $2 = ".$filtkreis." $3 = ".$filtgem."</p>\n";}
+	}
+} elseif ($fscnt == 50) {
 	echo "<p>... und weitere Flurst&uuml;cke (Limit 50 erreicht).</p>";
 }
@@ -163,11 +171,9 @@
 echo <<<END
 
-<form action=''>
-	<div class='buttonbereich noprint'>
-	<hr>
-		<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck" /></a>&nbsp;
-		<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken" /></a>&nbsp;
-	</div>
-</form>
+<div class='buttonbereich noprint'>
+<hr>
+	<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck" /></a>&nbsp;
+	<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken" /></a>&nbsp;
+</div>
 END;
 
Index: trunk/info/info/alkisn/alkisfshist.php
===================================================================
--- trunk/info/info/alkisn/alkisfshist.php	(revision 375)
+++ trunk/info/info/alkisn/alkisfshist.php	(revision 377)
@@ -6,4 +6,5 @@
 	Version:
 	2016-02-24 Version fuer norGIS-ALKIS-Import
+	2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermÃ¶glichen (Filter Gemeinde)
 */
 
@@ -30,5 +31,4 @@
 	} else {
 		$stri=trim($dbarr, "{}");
-		//$arr = split(",",$stri);
 		$arr = explode(",",$stri);
 		foreach($arr AS $val){
@@ -42,7 +42,7 @@
 
 function gemkg_name($gkey) {
-// Schluessel wird uebergeben, Name in DB nachschlagen
+//	Schluessel wird ÃŒbergeben, Name dazu in der DB nachschlagen
 	global $con;
-	$sql ="SELECT bezeichnung FROM ax_gemarkung g WHERE g.gemarkungsnummer= $1 ;";
+	$sql ="SELECT bezeichnung FROM ax_gemarkung g WHERE g.gemarkungsnummer= $1 AND g.endet IS NULL LIMIT 1;";
 	$v=array($gkey);
 	$res=pg_prepare("", $sql);
@@ -65,5 +65,5 @@
 // Akt. FS hat keine Verweise auf Vorgaenger. Darum in den Nachfolger-Verweisen von Hist.-FS suchen.
 // Problem: Dies sind Arrays, die nicht performant durchsucht werden koennen.
-	global $gkz, $con, $debug;
+	global $gkz, $con, $debug, $showkey, $filtkreis, $filtgem;
 
 	$wherecl="WHERE $1 = ANY (nachfolgerflurstueckskennzeichen) ";
@@ -93,5 +93,5 @@
 		$vfsk=$rowv["flurstueckskennzeichen"];
 		echo "Flurst&uuml;ck <a title='Historie des Vorg&auml;ngerflurst&uuml;cks' href='".$_SERVER['PHP_SELF']."?gkz=".$gkz."&amp;fskennz=".$vfsk."&amp;gmlid=".$gmlv;
-			if ($showkey)   {echo "&amp;showkey=j";}
+			if ($showkey) {echo "&amp;showkey=j";}
 		echo "'>".fzerleg($vfsk)."</a><br>";
 		$zv++;
@@ -103,4 +103,5 @@
 session_start();
 $id="n";
+$gmlid="";
 $cntget = extract($_GET);
 require_once("alkis_conf_location.php");
@@ -110,12 +111,8 @@
 if ($keys == "j") {$showkey=true;} else {$showkey=false;}
 ?>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
+<!doctype html>
+<html lang="de">
 <head>
-	<meta name="author" content="b600352" >
-	<meta http-equiv="cache-control" content="no-cache">
-	<meta http-equiv="pragma" content="no-cache">
-	<meta http-equiv="expires" content="0">
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+	<meta charset="utf-8">
 	<title>ALKIS Flurst&uuml;cks-Historie</title>
 	<link rel="stylesheet" type="text/css" href="alkisauszug.css">
@@ -127,5 +124,5 @@
 <body>
 <?php
-$con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
+$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisfshist.php'");
 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n";
 
@@ -136,25 +133,33 @@
 	$whereclause="WHERE gml_id= $1 ";
 	$v = array($gmlid);
-} else {	// Alternativ: Flurst.-Kennz. uebergeben
-	if ($fskennz != "") {
+} elseif ($fskennz != "") { // Alternativ: Flurst.-Kennz. uebergeben
 		$parmtyp="Flurst&uuml;ckskennzeichen";
 		$parmval=$fskennz;
 		$whereclause="WHERE flurstueckskennzeichen= $1 "; // hinten auffuellen mit _ auf 20 Stellen
 		$v = array($fskennz);
-	} else { // Pfui!
+} else { // Pfui!
 		$parmtyp="";
 		echo "<p class='err'>Parameter 'gmlid' oder 'fskennz' fehlt.</p>";
-	}
 }
 
 if ($parmtyp != "") { // einer der beiden erlaubten FÃ€lle
 	// UNION-Abfrage auf 3Ã€hnliche Tabellen, darin aber immer nur 1 Treffer.
-	// noGIS: unterschiedliche Formate der gleichen Spalten, Typumwandlung "cast" verwenden.
+	// norGIS: unterschiedliche Formate der gleichen Spalten, Typumwandlung "cast" verwenden.
 
 	$felder="gml_id, flurnummer, cast(zaehler AS character varying), cast(nenner AS character varying), flurstueckskennzeichen, amtlicheflaeche, zeitpunktderentstehung, gemarkungsnummer, ";
 
-	$sqlu ="SELECT 'a' AS ftyp, ".$felder."null AS nach, null AS vor, null AS \"name\" FROM ax_flurstueck f ".$whereclause." AND f.endet IS NULL "
-	."UNION SELECT 'h' AS ftyp, ".$felder."nachfolgerflurstueckskennzeichen AS nach, vorgaengerflurstueckskennzeichen AS vor, name FROM ax_historischesflurstueck h ".$whereclause." AND h.endet IS NULL "
-	."UNION SELECT 'o' AS ftyp, ".$felder."nachfolgerflurstueckskennzeichen AS nach, vorgaengerflurstueckskennzeichen AS vor, name FROM ax_historischesflurstueckohneraumbezug o ".$whereclause." AND o.endet IS NULL;";
+	if ($filtgem == '') { // Filter Gemeinde ?
+		$wheref='';
+		$whereh='';
+		$whereo='';
+	} else { // ZusÃ€tze zur WHERE-Clausel
+		$wheref=" AND f.kreis = '".$filtkreis."' AND f.gemeinde = '".$filtgem."' ";
+		$whereh=" AND h.kreis = '".$filtkreis."' AND h.gemeinde = '".$filtgem."' ";
+		$whereo=" AND o.gemeinde = '".$filtgem."' ";
+	}
+
+	$sqlu ="SELECT 'a' AS ftyp, ".$felder."null AS nach, null AS vor, null AS \"name\" FROM ax_flurstueck f ".$whereclause.$wheref." AND f.endet IS NULL "
+	."UNION SELECT 'h' AS ftyp, ".$felder."nachfolgerflurstueckskennzeichen AS nach, vorgaengerflurstueckskennzeichen AS vor, name FROM ax_historischesflurstueck h ".$whereclause.$whereh." AND h.endet IS NULL "
+	."UNION SELECT 'o' AS ftyp, ".$felder."nachfolgerflurstueckskennzeichen AS nach, vorgaengerflurstueckskennzeichen AS vor, name FROM ax_historischesflurstueckohneraumbezug o ".$whereclause.$whereo." AND o.endet IS NULL;";
 
 	$resu = pg_prepare("", $sqlu);
@@ -178,6 +183,10 @@
 		if ($gmlid == "") {$gmlid=$rowu["gml_id"];} // fuer selbst-link-Umschalter ueber footer
 	} else {
-		if ($debug > 1) {echo "<br><p class='err'>Fehler! Kein Treffer f&uuml;r ".$parmtyp." = '".$parmval."'</p><br>";}
-		if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sqlu."<br>$1=".$parmtyp." = '".$parmval."'</p>";}
+		if ($debug > 1) {
+			echo "<br><p class='err'>Fehler! Kein Treffer f&uuml;r ".$parmtyp." = '".$parmval."'</p><br>";
+			if ($debug > 2) {
+				echo "<p class='dbg'>SQL=<br>".$sqlu."<br>$1=".$parmtyp." = '".$parmval."'</p>";
+			}
+		}
 	}
 }
@@ -237,14 +246,13 @@
 
 if ($ftyp == "a") { // Aktuell -> Historie
-	echo "\n<p class='nwlink noprint'>weitere Auskunft: ";
-		echo "<a href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$gmlid."&amp;eig=n";
+	echo "\n<p class='nwlink noprint'>weitere Auskunft: "
+		."<a href='alkisfsnw.php?gkz=".$gkz."&amp;gmlid=".$gmlid."&amp;eig=n";
 			if ($showkey)   {echo "&amp;showkey=j";}
-			echo "' title='Flurst&uuml;cksnachweis'>Flurst&uuml;ck ";
-			echo "<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>";
-		echo "</a>";
-}
-echo "\n<hr>";
-
-echo "<table class='outer'>"
+			echo "' title='Flurst&uuml;cksnachweis'>Flurst&uuml;ck "
+			."<img src='ico/Flurstueck_Link.png' width='16' height='16' alt=''>"
+		."</a>";
+}
+echo "\n<hr>"
+."<table class='outer'>"
 	."\n<tr>
 		<td class='head'>Flurst&uuml;ck</td>
@@ -294,11 +302,9 @@
 ?>
 
-<form action=''>
-	<div class='buttonbereich noprint'>
-	<hr>
-		<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
-		<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
-	</div>
-</form>
+<div class='buttonbereich noprint'>
+<hr>
+	<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
+	<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
+</div>
 
 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?>
Index: trunk/info/info/alkisn/alkishaus.php
===================================================================
--- trunk/info/info/alkisn/alkishaus.php	(revision 375)
+++ trunk/info/info/alkisn/alkishaus.php	(revision 377)
@@ -5,4 +5,6 @@
 	Version:
 	2016-02-24 Version fuer norGIS-ALKIS-Import
+	2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermÃ¶glichen
+	2016-12-05 Array-Behandlung ax_gebaeude.name
 
 	ToDo:
@@ -10,11 +12,12 @@
 	- geometrische Suche nach FS, auf denen das Haus steht
 	- Template im WMS auf Ebene GebÃ€ude hierhin verknÃŒpfen.
-	- Auch diese Relationen abbilden:
+	- Relationen abbilden:
 		ax_gebaeude >gehoertZu> ax_gebaeude  (ringfÃ¶rmige Verbindung GebÃ€udekomplex)
 		ax_gebaeude (umschliesst) ax_bauteil
-		ax_gebaeude >gehoert> ax_person  (Ausnahme)
+		ax_gebaeude >gehoert> ax_person (Ausnahme)
 */
 session_start();
 $id="n";
+$allfld = "n";
 $cntget = extract($_GET);
 require_once("alkis_conf_location.php");
@@ -25,12 +28,8 @@
 if ($allfld == "j") {$allefelder=true;} else {$allefelder=false;}
 ?>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
+<!doctype html>
+<html lang="de">
 <head>
-	<meta name="author" content="b600352" >
-	<meta http-equiv="cache-control" content="no-cache">
-	<meta http-equiv="pragma" content="no-cache">
-	<meta http-equiv="expires" content="0">
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+	<meta charset="utf-8">
 	<title>ALKIS Daten zum Haus</title>
 	<link rel="stylesheet" type="text/css" href="alkisauszug.css">
@@ -38,4 +37,5 @@
 	<style type='text/css' media='print'>
 		.noprint {visibility: hidden;}
+		td.mittelspalte	{width: 190px;}
 	</style>
 </head>
@@ -43,13 +43,14 @@
 <?php
 
-$con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
+$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkishaus.php'");
 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n";
 
 // G e b a e u d e
-// ++ auch .d-Spalten der alkis_werte? 
+
 $sqlg ="SELECT g.gml_id, g.name, g.bauweise, g.gebaeudefunktion, g.anzahlderoberirdischengeschosse AS aog, g.anzahlderunterirdischengeschosse AS aug, 
 g.lagezurerdoberflaeche, g.dachgeschossausbau, g.zustand, array_to_string(g.weiteregebaeudefunktion, ',') AS wgf, g.dachform, g.hochhaus, g.objekthoehe, g.geschossflaeche, g.grundflaeche, g.umbauterraum, g.baujahr, g.dachart, g.qualitaetsangaben, 
-h.v bbauw, u.v AS bfunk, z.v AS zustandv, d.v AS bdach, a.v AS dgaus, o.v AS oflv,
-round(st_area(g.wkb_geometry)::numeric,2) AS gebflae FROM ax_gebaeude g 
+h.v AS bbauw, h.d AS dbauw, u.v AS bfunk, u.d AS dfunk, z.v AS zustandv, z.d AS zustandd, d.v AS bdach, a.v AS dgaus, o.v AS oflv, o.d AS ofld,
+round(st_area(g.wkb_geometry)::numeric,2) AS gebflae
+FROM ax_gebaeude g 
 LEFT JOIN alkis_wertearten h ON cast(g.bauweise AS character varying)=h.k AND h.element='ax_gebaeude' AND h.bezeichnung='bauweise'
 LEFT JOIN alkis_wertearten u ON cast(g.gebaeudefunktion AS character varying)=u.k AND u.element='ax_gebaeude' AND u.bezeichnung='gebaeudefunktion'
@@ -78,8 +79,11 @@
 // Umschalter: auch leere Felder ausgeben?
 echo "<p class='nwlink noprint'>";
-echo "<a class='nwlink' href='".$_SERVER['PHP_SELF']."?gkz=".$gkz."&amp;gmlid=".$gmlid;
+echo "Umschalten: <a class='nwlink' href='".$_SERVER['PHP_SELF']."?gkz=".$gkz."&amp;gmlid=".$gmlid;
 	if ($showkey) {echo "&amp;showkey=j";} else {echo "&amp;showkey=n";}
-	if ($allefelder) {echo "&amp;allfld=n'>nur Felder mit Inhalt";} 
-	else {echo "&amp;allfld=j'>auch leere Felder";}
+	if ($allefelder) {
+		echo "&amp;allfld=n'>nur Felder mit Inhalt";
+	} else {
+		echo "&amp;allfld=j'>auch leere Felder";
+	}
 echo "</a></p>";
 
@@ -91,5 +95,6 @@
 	."\n<tr>\n"
 		."\n\t<td class='head' title=''>Attribut</td>"
-		."\n\t<td class='head' title=''>Wert</td>"
+		."\n\t<td class='head mittelspalte' title=''>Wert</td>"
+		."\n\t<td class='head' title=''>Erkl&auml;rung</td>"
 	."\n</tr>";
 
@@ -97,12 +102,18 @@
 	$aug=$rowg["aug"];
 	$hoh=$rowg["hochhaus"];
-	$nam=$rowg["name"]; // Gebaeude-Name
+	$nam=trim(trim($rowg["name"], "{}"), '"'); // Gebaeude-Name ist ein Array in der DB: '{"A","B"}'
+	// Mehrfachbelegung nur theoretisch. Entklammern reicht. Mal mit und mal ohne "" drum !?
+	/* SELECT name FROM ax_gebaeude WHERE NOT name IS NULL AND array_length(name, 1) > 1; */
+	$kfunk=$rowg["gebaeudefunktion"];
 	$bfunk=$rowg["bfunk"];
+	$dfunk=$rowg["dfunk"];
 
 	$baw=$rowg["bauweise"];
 	$bbauw=$rowg["bbauw"];
-
-	$ofl=$rowg["lagezurerdoberflaeche"]; // Key
-	$oflv=$rowg["oflv"]; // Value
+	$dbauw=$rowg["dbauw"];
+
+	$ofl=$rowg["lagezurerdoberflaeche"];
+	$oflv=$rowg["oflv"];
+	$ofld=$rowg["ofld"];
 
 	$dga=$rowg["dachgeschossausbau"]; // Key
@@ -111,4 +122,5 @@
 	$zus=$rowg["zustand"]; // Key
 	$zusv=$rowg["zustandv"]; // Value
+	$zusd=$rowg["zustandd"]; // Description
 
 	$wgf=$rowg["wgf"]; // Array-> kommagetrennte Liste
@@ -127,6 +139,7 @@
 	if (($nam != "") OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='\"Name\" ist der Eigenname oder die Bezeichnung des Geb&auml;udes.'>Name</td>"
+			."\n\t<td class='li'>Name</td>"
 			."\n\t<td>".$nam."</td>"
+			."\n\t<td class='erkl'>'Name' ist der Eigenname oder die Bezeichnung des Geb&auml;udes.</td>"
 		."\n</tr>";
 	}
@@ -167,77 +180,105 @@
 
 		if ($zhsnr == 1) {
-			echo "\n<tr>\n\t<td title='Lage mit Hausnummer oder Pseudonummer'>Adresse</td>";
-			echo "\n\t<td>";
+			echo "\n<tr>"
+				."\n\t<td class='li' title='Lage mit Hausnummer oder Pseudonummer'>Adresse</td>"
+				."\n\t<td class='fett'>";
 		}
 		echo "\n\t\t<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''>&nbsp;";
 		if ($showkey) {echo "<span class='key'>(".$skey.")</span>&nbsp;";}			
-		echo "\n\t\t<a title='Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;gmlid=".$gmllag."&amp;ltyp=".$ltyp."'>";
-			echo $snam."&nbsp;".$hsnr;
-			if ($ltyp == "p") { echo ", lfd.Nr ".$hlfd;}
+		echo "\n\t\t<a title='Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;gmlid=".$gmllag."&amp;ltyp=".$ltyp."'>"
+			.$snam."&nbsp;".$hsnr;
+			if ($ltyp == "p") {echo ", lfd.Nr ".$hlfd;}
 		echo "</a><br>";
 	} // Ende Loop Lagezeilen m.H.
-	if ($zhsnr > 0) {echo "\n\t</td>\n</tr>";}
-
+	if ($zhsnr > 0) {echo "\n\t</td>\n\t<td>&nbsp;</td>\n</tr>";}
+
+	// GebÃ€udefunktion
 	echo "\n<tr>"
-		."\n\t<td title='\"Geb&auml;udefunktion\" ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des Geb&auml;udes'>Funktion</td>"
-		."\n\t<td>";
-		if ($showkey) {echo "<span class='key'>".$rowg["gebaeudefunktion"]."</span>&nbsp;";}
+		."\n\t<td class='li'>Geb&auml;udefunktion</td>"
+		."\n\t<td class='fett'>";
+		if ($showkey) {echo "<span class='key'>".$kfunk."</span>&nbsp;";}
 		echo $bfunk."</td>"
+		."\n\t<td class='erkl'>'Geb&auml;udefunktion' ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des Geb&auml;udes'<br>".$dfunk."</td>"
 	."\n</tr>";
+
+	// Bauweise
 	if ($baw != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='\"Bauweise\" ist die Beschreibung der Art der Bauweise.'>Bauweise</td>"
-			."\n\t<td>";
+			."\n\t<td class='li'>Bauweise</td>"
+			."\n\t<td class='fett'>";
 			if ($showkey) {echo "<span class='key'>".$baw."</span>&nbsp;";}
 			echo $bbauw."</td>"
-		. "\n</tr>";
-	}
+			."\n\t<td class='erkl'>'Bauweise' ist die Beschreibung der Art der Bauweise.<br>".$dbauw."</td>"
+		."\n</tr>";
+	}
+
+	// Geschosse
 	if ($aog != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='Anzahl oberirdischer Geschosse'>Geschosse</td>"
-			. "\n\t<td>".$aog."</td>"
-		. "\n</tr>";
-	}
+			."\n\t<td class='li'>Geschosse</td>"
+			."\n\t<td class='fett'>".$aog."</td>"
+			."\n\t<td class='erkl'>Anzahl oberirdischer Geschosse</td>"
+		."\n</tr>";
+	}
+
+	// U-Geschosse
 	if ($aug != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='Anzahl unterirdischer Geschosse'>U-Geschosse</td>"
-			. "\n\t<td>".$aug."</td>"
-		. "\n</tr>";
-	}
+			."\n\t<td class='li'>U-Geschosse</td>"
+			. "\n\t<td class='fett'>".$aug."</td>"
+			."\n\t<td class='erkl'>Anzahl unterirdischer Geschosse</td>"
+		."\n</tr>";
+	}
+
+	// Hochhaus
 	if ($hoh != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='\"Hochhaus\" ist ein Geb&auml;ude, das nach Geb&auml;udeh&ouml;he und Auspr&auml;gung als Hochhaus zu bezeichnen ist. F&uuml;r Geb&auml;ude im Geschossbau gilt dieses i.d.R. ab 8 oberirdischen Geschossen, f&uuml;r andere Geb&auml;ude ab einer Geb&auml;udeh&ouml;he von 22 m.'>Hochhaus</td>";
-			echo "\n\t<td>".$hoh."</td>";
-		echo "\n</tr>";
-	}
+			."\n\t<td class='li'>Hochhaus</td>"
+			."\n\t<td class='fett'>".$hoh."</td>"
+			."\n\t<td class='erkl'>'Hochhaus' ist ein Geb&auml;ude, das nach Geb&auml;udeh&ouml;he und Auspr&auml;gung als Hochhaus zu bezeichnen ist. F&uuml;r Geb&auml;ude im Geschossbau gilt dieses i.d.R. ab 8 oberirdischen Geschossen, f&uuml;r andere Geb&auml;ude ab einer Geb&auml;udeh&ouml;he von 22 m.</td>"
+		."\n</tr>";
+	}
+
+	// Lage zur ErdoberflÃ€che
 	if ($ofl != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='\"Lage zur Erdoberfl&auml;che\" ist die Angabe der relativen Lage des Geb&auml;udes zur Erdoberfl&auml;che. Diese Attributart wird nur bei nicht ebenerdigen Geb&auml;uden gef&uuml;hrt.'>Lage zur Erdoberfl&auml;che</td>"
-			."\n\t<td>";
+			."\n\t<td class='li'>Lage zur Erdoberfl&auml;che</td>"
+			."\n\t<td class='fett'>";
 			if ($showkey) {echo "<span class='key'>".$ofl."</span>&nbsp;";}
-			echo $oflv;"</td>"
-		."\n</tr>";
-	}
+			echo $oflv."</td>"
+			."\n\t<td class='erkl'>'Lage zur Erdoberfl&auml;che' ist die Angabe der relativen Lage des Geb&auml;udes zur Erdoberfl&auml;che. Diese Attributart wird nur bei nicht ebenerdigen Geb&auml;uden gef&uuml;hrt.<br>".$ofld."</td>"
+		."\n</tr>";
+	}
+
+	// Dachgeschossausbau
+	// nichts dazu in alkis_wertearten.d
 	if ($dga != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='\"Dachgeschossausbau\" ist ein Hinweis auf den Ausbau bzw. die Ausbauf&auml;higkeit des Dachgeschosses.'>Dachgeschossausbau</td>"
-			."\n\t<td>";
+			."\n\t<td class='li'>Dachgeschossausbau</td>"
+			."\n\t<td class='fett'>";
 			if ($showkey) {echo "<span class='key'>".$dga."</span>&nbsp;";}
 			echo $dgav."</td>"
-		."\n</tr>";
-	}
+			."\n\t<td class='erkl'>'Dachgeschossausbau' ist ein Hinweis auf den Ausbau bzw. die Ausbauf&auml;higkeit des Dachgeschosses.</td>"
+		."\n</tr>";
+	}
+
+	// Zustand
 	if ($zus != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='\"Zustand\" beschreibt die Beschaffenheit oder die Betriebsbereitschaft von \"Geb&auml;ude\". Diese Attributart wird nur dann optional gef&uuml;hrt, wenn der Zustand des Geb&auml;udes vom nutzungsf&auml;higen Zustand abweicht.'>Zustand</td>"
-			."\n\t<td>";
+			."\n\t<td class='li'>Zustand</td>"
+			."\n\t<td class='fett'>";
 			if ($showkey) {echo "<span class='key'>".$zus."</span>&nbsp;";}
 			echo $zusv."</td>"
-		."\n</tr>";
-	}
+			."\n\t<td class='erkl'>'Zustand' beschreibt die Beschaffenheit oder die Betriebsbereitschaft von 'Geb&auml;ude'. Diese Attributart wird nur dann optional gef&uuml;hrt, wenn der Zustand des Geb&auml;udes vom nutzungsf&auml;higen Zustand abweicht.<br>".$zusd."</td>"
+		."\n</tr>";
+	}
+
+	// Weitere GebÃ€udefunktionen
 	// Suche Testfall: SELECT * FROM ax_gebaeude WHERE NOT weiteregebaeudefunktion IS NULL;
 	// Keiner zu finden. Das folgende ungetestet:
 	if ($wgf != "" OR $allefelder) { // "weiteregebaeudefunktion" ist ein Array
 		echo "\n<tr>"
-			."\n\t<td title='\"Weitere Geb&auml;udefunktion\" ist die Funktion, die ein Geb&auml;ude neben der dominierenden Geb&auml;udefunktion hat.'>Weitere Geb&auml;udefunktionen</td>\n\t<td>";
+			."\n\t<td class='li'>Weitere Geb&auml;udefunktionen</td>"
+			."\n\t<td>";
 			if ($wgf != "") { // Kommagetrennte Liste aus Array
 				$sqlw="SELECT k, v, d FROM alkis_wertearten WHERE k IN ( $1 ) AND element='ax_gebaeude' AND bezeichnung='weiteregebaeudefunktion' ORDER BY k;";
@@ -258,57 +299,83 @@
 			}
 			echo "</td>"
-		."\n</tr>";
-	}
+			."\n\t<td class='erkl'>'Weitere Geb&auml;udefunktion' ist die Funktion, die ein Geb&auml;ude neben der dominierenden Geb&auml;udefunktion hat.</td>"
+		."\n</tr>";
+	}
+
+	// Dachform
+	// nichts dazu in alkis_wertearten.d
 	if ($daf != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='\"Dachform\" beschreibt die charakteristische Form des Daches.'>Dachform</td>"
-			."\n\t<td>";
+			."\n\t<td class='li'>Dachform</td>"
+			."\n\t<td class='fett'>";
 			if ($showkey) {echo "<span class='key'>".$daf."</span>&nbsp;";}
 			echo $dach."</td>"
-		."\n</tr>";
-	}
+			."\n\t<td class='erkl'>'Dachform' beschreibt die charakteristische Form des Daches.</td>"
+		."\n</tr>";
+	}
+
+	// ObjekthÃ¶he
 	if ($hho != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='\"Objekth&ouml;he\" ist die H&ouml;hendifferenz in [m] zwischen dem h&ouml;chsten Punkt der Dachkonstruktion und der festgelegten Gel&auml;ndeoberfl&auml;che des Geb&auml;udes.'>Objekth&ouml;he</td>"
-			."\n\t<td>".$hho."</td>"
-		."\n</tr>";
-	}
+			."\n\t<td class='li'>Objekth&ouml;he</td>"
+			."\n\t<td class='fett'>".$hho."</td>"
+			."\n\t<td class='erkl'>'Objekth&ouml;he' ist die H&ouml;hendifferenz in [m] zwischen dem h&ouml;chsten Punkt der Dachkonstruktion und der festgelegten Gel&auml;ndeoberfl&auml;che des Geb&auml;udes.</td>"
+		."\n</tr>";
+	}
+
+	// GeschossflÃ€che
 	if ($gfl != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='\"Geschossfl&auml;che\" ist die Geb&auml;udegeschossfl&auml;che in [qm].'>Geschossfl&auml;che</td>"
-			."\n\t<td>";
+			."\n\t<td class='li'>Geschossfl&auml;che</td>"
+			."\n\t<td class='fett'>";
 			if ($gfl != "") {echo $gfl." m&#178;";}
 			echo "</td>"
-		."\n</tr>";
-	}
+			."\n\t<td class='erkl'>'Geschossfl&auml;che' ist die Geb&auml;udegeschossfl&auml;che in [qm].</td>"
+		."\n</tr>";
+	}
+
+	// GrundflÃ€che
 	if ($grf != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='\"Grundfl&auml;che\" ist die Geb&auml;udegrundfl&auml;che in [qm].'>Grundfl&auml;che</td>"
-			."\n\t<td>";
+			."\n\t<td class='li'>Grundfl&auml;che</td>"
+			."\n\t<td class='fett'>";
 			if ($grf != "") {echo $grf." m&#178;";}
-		echo "\n</tr>";
-	}
+			echo "\n\t<td class='erkl'>'Grundfl&auml;che' ist die Geb&auml;udegrundfl&auml;che in [qm].</td>"
+		."\n</tr>";
+	}
+
+	// Umbauter Raum
 	if ($ura != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='\"Umbauter Raum\" ist der umbaute Raum [Kubikmeter] des Geb&auml;udes.'>Umbauter Raum</td>"
-			."\n\t<td>".$ura."</td>"
-		."\n</tr>";
-	}
+			."\n\t<td class='li'>Umbauter Raum</td>"
+			."\n\t<td class='fett'>".$ura."</td>"
+			."\n\t<td class='erkl'>'Umbauter Raum' ist der umbaute Raum [Kubikmeter] des Geb&auml;udes.</td>"
+		."\n</tr>";
+	}
+
+	// Baujahr
 	if ($bja != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='\"Baujahr\" ist das Jahr der Fertigstellung oder der baulichen Ver&auml;nderung des Geb&auml;udes.'>Baujahr</td>"
-			."\n\t<td>".$bja."</td>"
-		."\n</tr>";
-	}
+			."\n\t<td class='li'>Baujahr</td>"
+			."\n\t<td class='fett'>".$bja."</td>"
+			."\n\t<td class='erkl'>'Baujahr' ist das Jahr der Fertigstellung oder der baulichen Ver&auml;nderung des Geb&auml;udes.</td>"
+		."\n</tr>";
+	}
+
+	// Dachart
 	if ($daa != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='\"Dachart\" gibt die Art der Dacheindeckung (z.B. Reetdach) an.'>Dachart</td>"
-			."\n\t<td>".$daa."</td>"
-		."\n</tr>";
-	}
+			."\n\t<td class='li'>Dachart</td>"
+			."\n\t<td class='fett'>".$daa."</td>"
+			."\n\t<td class='erkl'>'Dachart' gibt die Art der Dacheindeckung (z.B. Reetdach) an.</td>"
+		."\n</tr>";
+	}
+
+	// QualitÃ€tsangaben
 	if ($qag != "" OR $allefelder) {
 		echo "\n<tr>"
-			."\n\t<td title='Angaben zur Herkunft der Informationen (Erhebungsstelle). Die Information ist konform zu den Vorgaben aus ISO 19115 zu repr&auml;sentieren.'>Qualit&auml;tsangaben</td>"
-			."\n\t<td>".$qag."</td>"
+			."\n\t<td class='li'>Qualit&auml;tsangaben</td>"
+			."\n\t<td class='fett'>".$qag."</td>"
+			."\n\t<td class='erkl'>Angaben zur Herkunft der Informationen (Erhebungsstelle). Die Information ist konform zu den Vorgaben aus ISO 19115 zu repr&auml;sentieren.</td>"
 		."\n</tr>";
 	}
@@ -321,11 +388,9 @@
 ?>
 
-<form action=''>
-	<div class='buttonbereich noprint'>
-	<hr>
-		<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
-		<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
-	</div>
-</form>
+<div class='buttonbereich noprint'>
+<hr>
+	<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
+	<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
+</div>
 
 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?>
Index: trunk/info/info/alkisn/alkisinlayausk.php
===================================================================
--- trunk/info/info/alkisn/alkisinlayausk.php	(revision 375)
+++ trunk/info/info/alkisn/alkisinlayausk.php	(revision 377)
@@ -11,4 +11,5 @@
 	Version:
 	2016-02-24 Version fuer norGIS-ALKIS-Import
+	2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermÃ¶glichen (Berechtigung fÃŒr Gemeinde prÃŒfen)
 */
 session_start();
@@ -19,12 +20,8 @@
 $gmlid = isset($_GET["gmlid"]) ? $_GET["gmlid"] : 0;
 echo <<<END
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
+<!doctype html>
+<html lang="de">
 <head>
-	<meta name="author" content="b600352" >
-	<meta http-equiv="cache-control" content="no-cache">
-	<meta http-equiv="pragma" content="no-cache">
-	<meta http-equiv="expires" content="0">
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+	<meta charset="utf-8">
 	<link rel="stylesheet" type="text/css" href="alkisauszug.css">
 	<link rel="shortcut icon" type="image/x-icon" href="ico/Flurstueck.ico">
@@ -39,9 +36,9 @@
 <body>
 END;
-$con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
+$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisinlayausk.php'");
 if (!$con) {echo "<br>Fehler beim Verbinden der DB.\n<br>";}
 
 // *** F L U R S T U E C K ***
-$sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung 
+$sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung, f.regierungsbezirk, f.kreis, f.gemeinde
 FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer 
 WHERE f.gml_id= $1 AND f.endet IS NULL ;";
@@ -64,7 +61,24 @@
 	$flae=$row["amtlicheflaeche"];
 	$flae=number_format($flae,0,",",".") . " m&#178;";
+	$fsreg=$row["regierungsbezirk"]; // Filter ZustÃ€ndigkeit
+	$fskrs=$row["kreis"];
+	$fsgem=$row["gemeinde"];
 } else {
 	echo "<p class='err'>Kein Treffer fuer gml_id=".$gmlid."</p>";
 	//if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}
+}
+
+// PrÃŒfung der Gebiets-Berechtigung bei gemeinsam genutzten Datenbanken (Kreis und Gemeinde)
+// FÃŒr das gkz (z.B. aus dem Mapfile-Namen) wird in der Konfiguration ein Filter gesetzt.
+if ( ($filtkreis != '' and $filtkreis != $fskrs) or ($filtgem != '' and $filtgem != $fsgem) ) {
+	// Einer der gesetzten Filter passt nicht
+	if ($debug > 2) {
+		echo "<p class='err'>Filter Kreis='".$filtkreis."', Gemeinde='".$filtgem."'</p>";
+		echo "<p class='err'>Flstk. Kreis='".$fskrs."', Gemeinde='".$fsgem."'</p>";
+	}
+	echo "\n<br><p class='stop1'>Zugriff nicht erlaubt</p>
+	\n<br><p class='stop2'>Dies Flurst&uuml;ck liegt ausserhalb der zust&auml;ndigen Stadt oder Gemeinde.</p>\n</body>\n</html>";
+	pg_free_result($res);
+	exit;
 }
 
Index: trunk/info/info/alkisn/alkisbestnw.php
===================================================================
--- trunk/info/info/alkisn/alkisbestnw.php	(revision 375)
+++ trunk/info/info/alkisn/alkisbestnw.php	(revision 377)
@@ -7,4 +7,5 @@
 	Version:
 	2016-02-24 Version fuer norGIS-ALKIS-Import
+	2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermÃ¶glichen, Markierung der Sortierung
 */
 session_start();
@@ -17,12 +18,8 @@
 if ($keys == "j") {$showkey=true;} else {$showkey=false;}
 ?>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
+<!doctype html>
+<html lang="de">
 <head>
-	<meta name="author" content="b600352" >
-	<meta http-equiv="cache-control" content="no-cache">
-	<meta http-equiv="pragma" content="no-cache">
-	<meta http-equiv="expires" content="0">
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+	<meta charset="utf-8">
 	<title>ALKIS Bestandsnachweis</title>
 	<link rel="stylesheet" type="text/css" href="alkisauszug.css">
@@ -39,5 +36,5 @@
 <body>
 <?php
-$con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
+$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisbestnw.php'");
 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n";
 
@@ -98,9 +95,9 @@
 } else {
 	// E I G E N T U E M E R
-	echo "\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>\n";
+	echo "\n\n<h3><img src='ico/Eigentuemer_2.png' width='16' height='16' alt=''> Angaben zum Eigentum</h3>";
 	$n = eigentuemer($con, $gmlid, true, ""); // MIT Adressen.
 	if ($n == 0) { // keine NamensNr, kein Eigentuemer
-		echo "\n<p class='err'>Keine Namensnummer gefunden.</p>";
-		echo "\n<p>Bezirk: ".$row["bezirk"].", Blatt: ".$row["nr"].", Blattart ".$blattkey." (".$blattart.")</p>";
+		echo "\n<p class='err'>Keine Namensnummer gefunden.</p>"
+		."\n<p>Bezirk: ".$row["bezirk"].", Blatt: ".$row["nr"].", Blattart ".$blattkey." (".$blattart.")</p>";
 	}
 }
@@ -123,8 +120,8 @@
 }
 if ($anz > 0) {
-	echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Rechte und Flurst&uuml;cke</h3>";
-	echo "\n<table class='fs'>";
-	echo "\n<tr>"; // zus. Kopfz.
-		echo "\n\t<td>&nbsp;</td>"
+	echo "\n<hr>\n\n<h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Rechte und Flurst&uuml;cke</h3>"
+	."\n<table class='fs'>"
+	."\n<tr>" // zus. Kopfz.
+		."\n\t<td>&nbsp;</td>"
 		."\n\t<td class='dien' title='herrschendes Grundst&uuml;ck'>herrschende Buchungsart</td>"
 		."\n\t<td>&nbsp;</td>"
@@ -140,10 +137,10 @@
 } // gemeinsame Kopfzeile
 echo "\n<tr>"
-	."\n\t<td class='head' title='laufende Nummer Bestandsverzeichnis (BVNR) = Grundst&uuml;ck'><span class='wichtig'>BVNR</span></td>"
+	."\n\t<td class='heads' title='laufende Nummer Bestandsverzeichnis (BVNR) = Grundst&uuml;ck'><span class='wichtig'>BVNR</span><img src='ico/sort.png' width='10' height='10' alt='' title='prim&auml;re Sortierung'></td>"
 	."\n\t<td class='head'>Buchungsart</td>"
 	."\n\t<td class='head'>Anteil</td>"
-	."\n\t<td class='head'>Gemarkung</td>"
-	."\n\t<td class='head'>Flur</td>"
-	."\n\t<td class='head fsnr' title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><span class='wichtig'>Flurst.</span></td>"
+	."\n\t<td class='heads'>Gemarkung</td>"
+	."\n\t<td class='heads'>Flur</td>"
+	."\n\t<td class='heads fsnr' title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><span class='wichtig'>Flurst.</span></td>"
 	."\n\t<td class='head fla'>Fl&auml;che</td>"
 	."\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>"
@@ -153,6 +150,5 @@
 // aktuelles ax_buchungsblatt <istBestandteilVon< ax_buchungsstelle 
 $sql ="SELECT s.gml_id, s.buchungsart, s.laufendenummer AS lfd, s.beschreibungdesumfangsderbuchung AS udb, s.zaehler, s.nenner, s.nummerimaufteilungsplan AS nrap, s.beschreibungdessondereigentums AS sond, b.v as bart, b.d
-FROM ax_buchungsstelle s 
-LEFT JOIN alkis_wertearten b ON cast(s.buchungsart AS character varying)=b.k AND b.element='ax_buchungsstelle' and b.bezeichnung='buchungsart'
+FROM ax_buchungsstelle s LEFT JOIN alkis_wertearten b ON cast(s.buchungsart AS character varying)=b.k AND b.element='ax_buchungsstelle' and b.bezeichnung='buchungsart'
 WHERE s.istbestandteilvon= $1 AND s.endet IS NULL ORDER BY cast(s.laufendenummer AS integer);";
 
@@ -202,5 +198,5 @@
 		if (!$resan) {
 			echo "<p class='err'>Fehler bei 'andere Buchungsstelle'.</p>\n";
-			if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}
+			//if ($debug > 2) {echo "<p class='dbg'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}
 		}
 		$a=0; // count
@@ -245,36 +241,29 @@
 						echo "&nbsp;"; // dann Anzeige unterdruecken
 					} else {
-						echo "<a name='bvnr".$lfdnr."'></a>"; // Sprungmarke
-						echo "<span class='wichtig'>".$bvnr."</span>"; 
+						echo "<a id='bvnr".$lfdnr."'></a>" // Sprungmarke
+						."<span class='wichtig'>".$bvnr."</span>"; 
 						$altbvnr = $bvnr; // Gruppenwechsel merken
 					}
-				echo "</td>";
-
-				echo "\n\t<td class='dien'>"; // Sp.2 Buchung
+				echo "</td>"
+				."\n\t<td class='dien'>"; // Sp.2 Buchung
 					if ($showkey) {echo "<span class='key'>".$row["buchungsart"]."</span> ";}
-				echo $bart." an</td>";
-
-				echo "\n\t<td>".$anteil."</td>"; // Sp.3 Anteil
-
-				echo "\n\t<td class='dien'>"; // Sp.4 Gemarkg., hier Bezirk
+				echo $bart." an</td>"
+				."\n\t<td>".$anteil."</td>" // Sp.3 Anteil
+				."\n\t<td class='dien'>"; // Sp.4 Gemarkg., hier Bezirk
 					if ($showkey) {echo "<span class='key'>".$fbbez."</span> ";}
 					echo $beznam
 				."</td>";
-
-				echo "\n\t<td class='dien'>".$fbblatt."</td>"; // Sp. 5 Blatt
-
-				echo "\n\t<td class='dien'>".str_pad($lfdnran, 4, "0", STR_PAD_LEFT)."</td>";// Sp.6 BVNR
-
-				echo "\n\t<td class='dien'>"; // Sp.7 Buchungsart
+				echo "\n\t<td class='dien'>".$fbblatt."</td>" // Sp. 5 Blatt
+					."\n\t<td class='dien'>".str_pad($lfdnran, 4, "0", STR_PAD_LEFT)."</td>" // Sp.6 BVNR
+					."\n\t<td class='dien'>"; // Sp.7 Buchungsart
 					if ($showkey) {echo "<span class='key'>".$rowan["buchungsart"]."</span> ";}
 					echo $baan." "
-				."</td>";
-
-				echo "\n\t<td>";  // Sp.8 Link ("an" oder "zu" ?)
-					echo "<p class='nwlink noprint'>an/zu"
+				."</td>"
+				."\n\t<td>" // Sp.8 Link ("an" oder "zu"?)
+					."<p class='nwlink noprint'>an/zu"
 					." <a href='alkisbestnw.php?gkz=".$gkz."&amp;gmlid=".$fbgml;
 						if ($showkey) {echo "&amp;showkey=j";}
-						echo "#bvnr".$lfdnran; // Sprungmarke auf der Seite
-						echo "' title='Zum Grundbuchnachweis des dienenden Blattes'>";
+						echo "#bvnr".$lfdnran // Sprungmarke auf der Seite
+						."' title='Zum Grundbuchnachweis des dienenden Blattes'>";
 						if ($showkey) {echo "<span class='key'>".$rowan["blattart"]."</span> ";}
 						echo $fbbart
@@ -304,5 +293,5 @@
 				."\n\t<td><span class='wichtig'>".$bvnr."</span></td>"
 				."\n\t<td colspan=7>"
-					."<p class='warn'>Flurst&uuml;cke zu ".$bvnr." nicht gefunden.</p>"
+					."<p class='warn'>Keine Flurst&uuml;cke zu Buchung ".$bvnr." im berechtigten Bereich.</p>"
 				."</td>"
 			."\n</tr>";
@@ -346,5 +335,5 @@
 LEFT JOIN alkis_wertearten wd ON cast(d.stellenart AS character varying)=wd.k AND wd.element='ax_dienststelle' AND wd.bezeichnung='stellenart'
 WHERE sf.istbestandteilvon = $1 AND sf.endet IS NULL AND sb.endet IS NULL AND bb.endet IS NULL 
-ORDER BY cast(sf.laufendenummer AS integer), bb.land, bb.bezirk, bb.buchungsblattnummermitbuchstabenerweiterung, cast(sb.laufendenummer AS integer);";
+ORDER BY cast(sf.laufendenummer AS integer), bz.bezeichnung, bb.buchungsblattnummermitbuchstabenerweiterung, cast(sb.laufendenummer AS integer);";
 
 $v = array($gmlid);
@@ -361,10 +350,10 @@
 		."\n<table class='outer'>"
 		."\n<tr>"
-			."\n\t<td class='head' title='lfd. Nr. auf diesem Blatt, wie im Teil Flurst&uuml;cke'>an <span class='wichtig'>BVNR</span></td>"
-			."\n\t<td class='head'>Land</td>"
+			."\n\t<td class='heads' title='lfd. Nr. auf diesem Blatt, wie im Teil Flurst&uuml;cke'><span class='wichtig'>an BVNR</span><img src='ico/sort.png' width='10' height='10' alt='' title='prim&auml;re Sortierung'></td>"
+		//	."\n\t<td class='heads'>Land</td>"
 			."\n\t<td class='head'>Dienststelle</td>"
-			."\n\t<td class='head'>Bezirk</td>"
-			."\n\t<td class='head'><span class='wichtig'>Blatt</span></td>"
-			."\n\t<td class='head'>BVNR</td>"
+			."\n\t<td class='heads'>Bezirk</td>"
+			."\n\t<td class='heads'><span class='wichtig'>Blatt</span></td>"
+			."\n\t<td class='heads'>BVNR</td>"
 			."\n\t<td class='head'>Buchungsart</td>"
 			."\n\t<td class='head nwlink noprint'>Weitere Auskunft</td>"
@@ -387,6 +376,6 @@
 
 		echo "</td>"
-		."\n\t<td>".$rowb["land"]."</td>"
-		."\n\t<td>"; // Amtsgericht
+		//."\n\t<td>".$rowb["land"]."</td>"
+		."\n\t<td>"; // Amtsgericht,Grundbuchamt
 			echo $rowb["stellev"]." ";
 			if ($showkey) {echo "<span class='key'>".$rowb["stelle"]."</span> ";}
@@ -426,15 +415,11 @@
 ?>
 
-<form action=''>
-	<div class='buttonbereich noprint'>
-	<hr>
-		<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
-		<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
-	 	<a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download_gb.png" width="32" height="16" alt="Export"></a>&nbsp;
-	</div>
-</form>
-
+<div class='buttonbereich noprint'>
+<hr>
+	<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
+	<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
+	<a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download_gb.png" width="32" height="16" alt="Export"></a>&nbsp;
+</div>
 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?>
-
 </body>
 </html>
Index: trunk/info/info/alkisn/alkisausk.php
===================================================================
--- trunk/info/info/alkisn/alkisausk.php	(revision 375)
+++ trunk/info/info/alkisn/alkisausk.php	(revision 377)
@@ -11,4 +11,8 @@
 	Version:
 	2016-02-24 Version fuer norGIS-ALKIS-Import
+	2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermÃ¶glichen (Berechtigung fÃŒr Gemeinde prÃŒfen)
+	Hinweis: Dies Modul wird beim Entwickler nicht mehr produktiv eingesetzt.
+		Statt dessen wird "alkisinlayauk.php" verwendet um von einer WMS-FeatureInfo in ein Fenster ÃŒberzuleiten.
+		Mangels Praxis bleiben Fehler mÃ¶glicherweise unerkannt.
 */
 session_start();
@@ -20,12 +24,8 @@
 if ($keys == "j") {$showkey=true;} else {$showkey=false;}
 echo <<<END
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
+<!doctype html>
+<html lang="de">
 <head>
-	<meta name="author" content="b600352" >
-	<meta http-equiv="cache-control" content="no-cache">
-	<meta http-equiv="pragma" content="no-cache">
-	<meta http-equiv="expires" content="0">
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+	<meta charset="utf-8">
 	<link rel="stylesheet" type="text/css" href="alkisauszug.css">
 	<link rel="shortcut icon" type="image/x-icon" href="ico/Flurstueck.ico">
@@ -37,9 +37,9 @@
 <body>
 END;
-$con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
+$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisausk.php'");
 if (!$con) {echo "<br>Fehler beim Verbinden der DB.\n<br>";}
 
 // *** F L U R S T U E C K ***
-$sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung 
+$sql ="SELECT f.flurnummer, f.zaehler, f.nenner, f.amtlicheflaeche, g.gemarkungsnummer, g.bezeichnung, f.regierungsbezirk, f.kreis, f.gemeinde
 FROM ax_flurstueck f LEFT JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer
 WHERE f.gml_id= $1 AND f.endet IS NULL;";
@@ -62,4 +62,7 @@
 	$flae=$row["amtlicheflaeche"];
 	$flae=number_format($flae,0,",",".") . " m&#178;";
+	$fsreg=$row["regierungsbezirk"]; // Filter ZustÃ€ndigkeit
+	$fskrs=$row["kreis"];
+	$fsgem=$row["gemeinde"];
 } else {
 	echo "<p class='err'>Kein Treffer fuer gml_id=".$gmlid."</p>";
@@ -68,4 +71,18 @@
 // Balken
 echo "\n<p class='fsausk'>ALKIS-Auskunft Flurst&uuml;ck-&Uuml;bersicht ".$gmkgnr."-".$flurnummer."-".$flstnummer."</p>";
+
+// PrÃŒfung der Gebiets-Berechtigung bei gemeinsam genutzten Datenbanken (Kreis und Gemeinde)
+// FÃŒr das gkz (z.B. aus dem Mapfile-Namen) wird in der Konfiguration ein Filter gesetzt.
+if ( ($filtkreis != '' and $filtkreis != $fskrs) or ($filtgem != '' and $filtgem != $fsgem) ) {
+	// Einer der gesetzten Filter passt nicht
+	if ($debug > 2) {
+		echo "<p class='err'>Filter Kreis='".$filtkreis."', Gemeinde='".$filtgem."'</p>";
+		echo "<p class='err'>Flstk. Kreis='".$fskrs."', Gemeinde='".$fsgem."'</p>";
+	}
+	echo "\n<br><p class='stop1'>Zugriff nicht erlaubt</p>
+	\n<br><p class='stop2'>Dies Flurst&uuml;ck liegt ausserhalb der zust&auml;ndigen Stadt oder Gemeinde.</p>\n</body>\n</html>";
+	pg_free_result($res);
+	exit;
+}
 
 echo "\n<table class='outer'>\n<tr><td>";
@@ -223,5 +240,5 @@
 
 		// Ausgabe Name in Function
-		$n = eigentuemer($con, $rowg["gml_id"], false); // ohne Adr.
+		$n = eigentuemer($con, $rowg["gml_id"], false, "imFenster"); // ohne Adressen
 
 		if ($n == 0) { // keine NamNum, kein Eigent.
Index: trunk/info/info/alkisn/alkisnamstruk.php
===================================================================
--- trunk/info/info/alkisn/alkisnamstruk.php	(revision 375)
+++ trunk/info/info/alkisn/alkisnamstruk.php	(revision 377)
@@ -7,6 +7,5 @@
 	Version:
 	2016-02-24 Version fuer norGIS-ALKIS-Import
-
-	ToDo: Sortierung der GrundbÃŒcher zum Namen
+	2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermÃ¶glichen
 */
 session_start();
@@ -21,12 +20,8 @@
 
 ?>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
+<!doctype html>
+<html lang="de">
 <head>
-	<meta name="author" content="b600352" >
-	<meta http-equiv="cache-control" content="no-cache">
-	<meta http-equiv="pragma" content="no-cache">
-	<meta http-equiv="expires" content="0">
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+	<meta charset="utf-8">
 	<title>ALKIS Person und Adresse</title>
 	<link rel="stylesheet" type="text/css" href="alkisauszug.css">
@@ -44,9 +39,9 @@
 
 <?php
-$con = pg_connect("host=".$dbhost." port=".$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
+
 // Balken
-echo "<p class='nakennz'>ALKIS Name id=".$gmlid."&nbsp;</p>\n";
-
-echo "\n<h2><img src='ico/Eigentuemer.png' width='16' height='16' alt=''> Person</h2>\n";
+echo "<p class='nakennz'>ALKIS Name id=".$gmlid."&nbsp;</p>\n"
+."\n<h2><img src='ico/Eigentuemer.png' width='16' height='16' alt=''> Person</h2>\n";
+$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisnamstruk.php'");
 if (!$con) "\n<p class='err'>Fehler beim Verbinden der DB</p>\n";
 
@@ -151,5 +146,6 @@
 	LEFT JOIN ax_buchungsblattbezirk b ON g.land=b.land AND g.bezirk=b.bezirk 
 	LEFT JOIN alkis_wertearten wb ON cast(g.blattart AS character varying)=wb.k AND wb.element='ax_buchungsblatt' AND wb.bezeichnung='blattart'
-	WHERE p.gml_id= $1 ORDER BY g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung;";
+	WHERE p.gml_id= $1
+	ORDER BY b.bezeichnung, g.buchungsblattnummermitbuchstabenerweiterung, n.laufendenummernachdin1421;";
 	// buchungsblatt... mal mit und mal ohne fuehrende Nullen, bringt die Sortierung durcheinander
 
@@ -164,8 +160,8 @@
 	echo "<table class='eig'>"
 	."\n<tr>"
-		."\n\t<td class='head'>Bezirk</td>"
+		."\n\t<td class='heads'>Bezirk<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>"
 		."\n\t<td class='head'>Blattart</td>"
-		."\n\t<td class='head'>Blatt</td>"
-		."\n\t<td class='head'>Namensnummer</td>"
+		."\n\t<td class='heads'>Blatt<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>"
+		."\n\t<td class='heads'>Namensnummer<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>"
 		."\n\t<td class='head'>Anteil</td>"
 		."\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>"
@@ -232,12 +228,10 @@
 ?>
 
-<form action=''>
-	<div class='buttonbereich noprint'>
-	<hr>
-		<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
-		<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
-		<a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download.png" width="16" height="16" alt="Export"></a>&nbsp;
-	</div>
-</form>
+<div class='buttonbereich noprint'>
+<hr>
+	<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
+	<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
+	<a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download.png" width="16" height="16" alt="Export"></a>&nbsp;
+</div>
 
 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?>
Index: trunk/info/info/alkisn/alkisgebaeudenw.php
===================================================================
--- trunk/info/info/alkisn/alkisgebaeudenw.php	(revision 375)
+++ trunk/info/info/alkisn/alkisgebaeudenw.php	(revision 377)
@@ -5,4 +5,6 @@
 	Version:
 	2016-02-24 Version fuer norGIS-ALKIS-Import
+	2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermÃ¶glichen
+	2016-12-05 Array-Behandlung ax_gebaeude.name
 */
 session_start();
@@ -15,12 +17,8 @@
 if ($keys == "j") {$showkey=true;} else {$showkey=false;}
 ?>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
+<!doctype html>
+<html lang="de">
 <head>
-	<meta name="author" content="b600352" >
-	<meta http-equiv="cache-control" content="no-cache">
-	<meta http-equiv="pragma" content="no-cache">
-	<meta http-equiv="expires" content="0">
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+	<meta charset="utf-8">
 	<title>ALKIS Geb&auml;udenachweis</title>
 	<link rel="stylesheet" type="text/css" href="alkisauszug.css">
@@ -32,5 +30,5 @@
 <body>
 <?php
-$con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
+$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisgebaeudenw.php'");
 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n";
 
@@ -109,6 +107,5 @@
 WHERE f.gml_id= $1 AND f.endet IS NULL and g.endet IS NULL "; // ID des akt. FS
 
-// "within" -> nur Geb., die komplett im FS liegen
-// "intersects" -> auch teil-ueberlappende Flst.
+// "within" -> nur Geb., die komplett im FS liegen. "intersects" -> auch teil-ueberlappende Flst.
 $sqlg.="AND st_intersects(g.wkb_geometry,f.wkb_geometry) = true ";
 // RLP: keine Relationen zu NebengebÃ€uden. Auf Qualifizierung verzichten, sonst werden NebengebÃ€ude nicht angezeigt
@@ -129,5 +126,5 @@
 	echo "\n<tr>\n"
 		."\n\t<td class='head' title='ggf. Geb&auml;udename'>Name</td>"
-		."\n\t<td class='head fla' title='Schnittsfl&auml;che'>Fl&auml;che</td>"
+		."\n\t<td class='heads fla' title='Schnittsfl&auml;che'><img src='ico/sortd.png' width='10' height='10' alt='' title='Sortierung (absteigend)'>Fl&auml;che</td>"
 		."\n\t<td class='head' title='Geb&auml;udefl&auml;che'>&nbsp;</td>"
 		."\n\t<td class='head' title='Geb&auml;udefunktion ist die zum Zeitpunkt der Erhebung vorherrschend funktionale Bedeutung des Geb&auml;udes'>Funktion</td>"
@@ -142,5 +139,7 @@
 		$ggml=$rowg["gml_id"];
 		$gebflsum=$gebflsum + $rowg["schnittflae"];
-		$gnam=$rowg["name"];
+		$gnam= trim(trim($rowg["name"], "{}"), '"'); // Gebaeude-Name ist ein Array in der DB: '{"A","B"}'
+		// Mehrfachbelegung nur theoretisch. Entklammern reicht. Mal mit und mal ohne "" drum !?
+		/* SELECT name FROM ax_gebaeude WHERE NOT name IS NULL AND array_length(name, 1) > 1; */
 		$gzus=$rowg["zustand"];
 		$gzustand=$rowg["bzustand"];
@@ -246,5 +245,5 @@
 			."\n\t<td>Summe:</td>"
 			."\n\t<td class='fla sum' title='von Geb&auml;uden &uuml;berbaute Fl&auml;che des Flurst&uuml;cks'>".number_format($gebflsum,0,",",".")."&nbsp;&nbsp;&nbsp;&nbsp;m&#178;</td>"
-			."\n\t<td>&nbsp;</td>\n\t<td>&nbsp;</td>\n\t<td>&nbsp;</td>\n\t<td>&nbsp;</td>\n\t<td>&nbsp;</td>"
+			."\n\t<td colspan='6'>&nbsp;</td>"
 		."\n</tr>"
 	."\n</table>";
@@ -255,11 +254,9 @@
 ?>
 
-<form action=''>
-	<div class='buttonbereich noprint'>
-	<hr>
-		<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
-		<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>
-	</div>
-</form>
+<div class='buttonbereich noprint'>
+<hr>
+	<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
+	<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>
+</div>
 
 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", ""); ?>
Index: trunk/info/info/alkisn/alkislage.php
===================================================================
--- trunk/info/info/alkisn/alkislage.php	(revision 375)
+++ trunk/info/info/alkisn/alkislage.php	(revision 377)
@@ -8,4 +8,5 @@
 	2016-02-24 Version fuer norGIS-ALKIS-Import
 	2016-03-14 Korrekturen
+	2016-11-29 HTML5, Gemeinsam genutzte Datenbanken ermÃ¶glichen
 
 	ToDo:
@@ -17,5 +18,4 @@
 session_start();
 $id="n";
-$ltyp="";
 $cntget = extract($_GET);
 require_once("alkis_conf_location.php");
@@ -24,9 +24,9 @@
 
 switch ($ltyp) {
-	case "m": // "Mit HsNr"     = Hauptgebaeude
+	case "m": // "Mit HsNr" = Hauptgebaeude
 		$tnam = "ax_lagebezeichnungmithausnummer"; break;
 	case "p": // "mit PseudoNr" = Nebengebaeude
 		$tnam = "ax_lagebezeichnungmitpseudonummer";	break;
-	case "o": //"Ohne HsNr"    = Gewanne oder Strasse
+	case "o": //"Ohne HsNr" = Gewanne oder Strasse
 		$tnam = "ax_lagebezeichnungohnehausnummer"; break;
 	default:
@@ -38,12 +38,8 @@
 if ($keys == "j") {$showkey=true;} else {$showkey=false;}
 ?>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
+<!doctype html>
+<html lang="de">
 <head>
-	<meta name="author" content="b600352" >
-	<meta http-equiv="cache-control" content="no-cache">
-	<meta http-equiv="pragma" content="no-cache">
-	<meta http-equiv="expires" content="0">
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+	<meta charset="utf-8">
 	<title>ALKIS Lagebezeichnung</title>
 	<link rel="stylesheet" type="text/css" href="alkisauszug.css">
@@ -55,5 +51,5 @@
 <body>
 <?php
-$con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
+$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkislage.php'");
 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n";
 
@@ -137,5 +133,10 @@
 	}
 } else {
-	echo "<p class='err'>Fehler! Kein Treffer fuer gml_id=".$gmlid."</p>";
+	echo "<p class='err'>Fehler! Kein Treffer fuer Lagebezeichnung mit gml_id='".$gmlid."'</p>";
+	if ($debug > 2) {
+		echo "<p class='err'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";
+	}
+	echo "</body></html>";
+	exit;
 }
 
@@ -234,5 +235,5 @@
 // ++ auch FlÃ€chenverschneidung?
 if ($ltyp <> "p") { // Pseudonummer linkt nur GebÃ€ude
-	echo "\n\n<a name='fs'></a><h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;cke</h3>\n"
+	echo "\n\n<a id='fs'></a><h3><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;cke</h3>\n"
 	."\n<p>mit dieser Lagebezeichnung.</p>";
 	switch ($ltyp) {
@@ -253,10 +254,9 @@
 		if ($debug > 2) {echo "<p class='err'>SQL=<br>".$sql."<br>$1 = gml_id = '".$gmlid."'</p>";}	
 	}
-
 	echo "\n<table class='fs'>"
 	."\n<tr>"
-		."\n\t<td class='head'>Gemarkung</td>"
-		."\n\t<td class='head'>Flur</td>"
-		."\n\t<td class='head fsnr' title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'>Flurst.</td>"
+		."\n\t<td class='heads'>Gemarkung<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>"
+		."\n\t<td class='heads'>Flur<img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'></td>"
+		."\n\t<td class='heads fsnr' title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><img src='ico/sort.png' width='10' height='10' alt='' title='Sortierung'>Flurst.</td>"
 		."\n\t<td class='head fla'>Fl&auml;che</td>"
 		."\n\t<td class='head nwlink noprint' title='Link: weitere Auskunft'>weit. Auskunft</td>"
@@ -290,5 +290,5 @@
 // andere Lage mit gleicher Hausnummer suchen
 if ($ltyp <> "o") { // nicht bei Gewanne (Ohne HsNr)
-	echo "\n\n<a name='lage'></a><h3><img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''> Lage</h3>\n"
+	echo "\n\n<a id='lage'></a><h3><img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''> Lage</h3>\n"
 	."\n<p>andere Lagebezeichnungen zur gleichen Hausnummer.</p>";
 	$whereclaus="WHERE land= $1 AND regierungsbezirk= $2 AND kreis= $3 AND gemeinde= $4 AND lage= $5 ";
@@ -362,5 +362,5 @@
 // G E B A E U D E
 if ($ltyp <> "o") { // OhneHsNr linkt nur Flurst.
-	echo "\n\n<a name='geb'></a><h3><img src='ico/Haus.png' width='16' height='16' alt=''> Geb&auml;ude</h3>"
+	echo "\n\n<a id='geb'></a><h3><img src='ico/Haus.png' width='16' height='16' alt=''> Geb&auml;ude</h3>"
 	."\n<p>mit dieser Lagebezeichnung.</p>";
 	switch ($ltyp) {
@@ -368,8 +368,4 @@
 		case "m": $bezart="ANY(g.zeigtauf)"; break; // array
 	}
-//	SELECT k,v,d FROM alkis_wertearten WHERE element='ax_gebaeude' AND bezeichnung='bauweise';
-//	SELECT k,v,d FROM alkis_wertearten WHERE element='ax_gebaeude' AND bezeichnung='gebaeudefunktion';
-//	SELECT k,v,d FROM alkis_wertearten WHERE element='ax_gebaeude' AND bezeichnung='zustand';
-	// Bauweise: nur 1 Beschreibung (.d) von 12, Funktion: ca. 50% von 232, Zustand: 2 von 7
 
 	$sql ="SELECT g.gml_id, g.gebaeudefunktion, array_to_string(g.name, ',') AS name, g.bauweise, g.grundflaeche, g.zustand, round(st_area(g.wkb_geometry)::numeric,2) AS flaeche,
@@ -379,4 +375,6 @@
 	LEFT JOIN alkis_wertearten z ON cast(g.zustand AS character varying)=z.k AND z.element='ax_gebaeude' AND z.bezeichnung='zustand'
 	WHERE $1 = ".$bezart." AND g.endet IS NULL;";
+	// Keine Sortierung (ORDER BY) notwendig weil i.d.R. nur ein (Haupt-)GebÃ€ude diese Hausnummer hat.
+	// FÃŒr weiter "alkis_wertearten" (EnstschlÃŒsselungen) zum GebÃ€ude dem Link "Haus" folgen.
 
 	$v = array($gmlid);
@@ -394,5 +392,5 @@
 		."\n\t<td class='head' title='Bauweise ist die Beschreibung der Art der Bauweise'>Bauweise</td>"
 		."\n\t<td class='head' title='Zustand beschreibt die Beschaffenheit oder die Betriebsbereitschaft von Geb&auml;ude. Diese Attributart wird nur dann optional gef&uuml;hrt, wenn der Zustand des Geb&auml;udes vom nutzungsf&auml;higen Zustand abweicht.'>Zustand</td>"
-		."\n\t<td class='head nwlink' title='Link zu kompletten Hausdaten'>Haus</td>"
+		."\n\t<td class='head nwlink' title='Komplette Hausdaten'>Hausdaten</td>"
 	."\n</tr>";
 	$i=0;
@@ -417,6 +415,6 @@
 
 			echo "\n\t<td class='nwlink noprint'>"
-				."<a title='Hausdaten' href='alkishaus.php?gkz=".$gkz."&amp;gmlid=".$ggml
-				."'><img src='ico/Haus.png' width='16' height='16' alt=''></a>"
+				."<a title='komplette Hausdaten' href='alkishaus.php?gkz=".$gkz."&amp;gmlid=".$ggml
+				."'>Haus <img src='ico/Haus.png' width='16' height='16' alt=''></a>"
 			."</td>"
 		."</tr>";
@@ -427,11 +425,9 @@
 ?>
 
-<form action=''>
-	<div class='buttonbereich noprint'>
-	<hr>
-		<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
-		<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
-	</div>
-</form>
+<div class='buttonbereich noprint'>
+<hr>
+	<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
+	<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
+</div>
 
 <?php footer($gmlid, $_SERVER['PHP_SELF']."?", "&amp;ltyp=".$ltyp); ?>
Index: trunk/info/info/alkisn/alkis_conf_location.php
===================================================================
--- trunk/info/info/alkisn/alkis_conf_location.php	(revision 375)
+++ trunk/info/info/alkisn/alkis_conf_location.php	(revision 377)
@@ -7,5 +7,4 @@
 	2016-02-23 Version fuer norGIS-ALKIS-Import, keine PostNAS-Versionsnummer im DB-Namen
 */
-require_once("/opt/gdi/conf/alkisn_conf.php");
-$dbname = $dbpre.$gkz;  // Prefix + Mandant
+require_once("/opt/gdi/conf/alkisn_conf.php"); // Nicht unter Web-Root speichern
 ?>
Index: trunk/info/info/alkisn/alkisfsnw.php
===================================================================
--- trunk/info/info/alkisn/alkisfsnw.php	(revision 375)
+++ trunk/info/info/alkisn/alkisfsnw.php	(revision 377)
@@ -8,4 +8,6 @@
 	2016-02-24 Version fuer norGIS-ALKIS-Import
 	2016-03-14 Korrekturen
+	2016-12-01 HTML5, Gemeinsam genutzte Datenbanken ermÃ¶glichen
+	2016-12-05 Nutzungsart-Kategorie ist nun in Text enthalten, nicht mehr aus der Definition ausschneiden
 
 	ToDo:
@@ -23,12 +25,8 @@
 if ($keys == "j") {$showkey=true;} else {$showkey=false;}
 ?>
-<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
-<html>
+<!doctype html>
+<html lang="de">
 <head>
-	<meta name="author" content="b600352" >
-	<meta http-equiv="cache-control" content="no-cache">
-	<meta http-equiv="pragma" content="no-cache">
-	<meta http-equiv="expires" content="0">
-	<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
+	<meta charset="utf-8">
 	<title>ALKIS Flurst&uuml;cksnachweis</title>
 	<link rel="stylesheet" type="text/css" href="alkisauszug.css">
@@ -46,5 +44,5 @@
 <?php
 // S t a r t
-$con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
+$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisfsnw.php'");
 if (!$con) echo "<p class='err'>Fehler beim Verbinden der DB</p>\n";
 
@@ -131,46 +129,59 @@
 }
 pg_free_result($res);
+
 // Balken
 if ($eig=="j") {
-	echo "<p class='fsei'>ALKIS Flurst&uuml;ck ".$gmkgnr."-".$flurnummer."-".$flstnummer."&nbsp;</p>\n";
-	echo "\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;ck mit Eigent&uuml;mer</h2>\n";
+	echo "<p class='fsei'>ALKIS Flurst&uuml;ck ".$gmkgnr."-".$flurnummer."-".$flstnummer."&nbsp;</p>\n"
+	."\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;ck mit Eigent&uuml;mer</h2>\n";
 } else {
-	echo "<p class='fskennz'>ALKIS Flurst&uuml;ck ".$gmkgnr."-".$flurnummer."-".$flstnummer."&nbsp;</p>\n";
-	echo "\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;ck</h2>\n";
-}
-echo "\n<table class='outer'>\n<tr>\n\t<td>"; // linke Seite
-	// darin Tabelle Kennzeichen
-	echo "\n\t<table class='kennzfs' title='Flurst&uuml;ckskennzeichen'>\n\t<tr>";
-		echo "\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>";
-		echo "\n\t<tr>\n\t\t<td title='Gemarkung'>";
+	echo "<p class='fskennz'>ALKIS Flurst&uuml;ck ".$gmkgnr."-".$flurnummer."-".$flstnummer."&nbsp;</p>\n"
+	."\n<h2><img src='ico/Flurstueck.png' width='16' height='16' alt=''> Flurst&uuml;ck</h2>\n";
+}
+
+// PrÃŒfung der Gebiets-Berechtigung bei gemeinsam genutzten Datenbanken (Kreis und Gemeinde)
+// FÃŒr das gkz (z.B. aus dem Mapfile-Namen) wird in der Konfiguration ein Filter gesetzt.
+if ( ($filtkreis != '' and $filtkreis != $kreis) or ($filtgem != '' and $filtgem != $gemeinde) ) {
+	// Einer der gesetzten Filter passt nicht
+	if ($debug > 2) {
+	//++ SchÃ¶nes Bild? Stop-Zeichen?
+		echo "<p class='err'>Filter Kreis='".$filtkreis."', Gemeinde='".$filtgem."'</p>"
+		."<p class='err'>Flstk. Kreis='".$fskrs."', Gemeinde='".$fsgem."'</p>";
+	}
+	echo "\n<br><p class='stop1'>Zugriff nicht erlaubt</p>"
+	."\n<br><p class='stop2'>Dies Flurst&uuml;ck liegt ausserhalb der zust&auml;ndigen Stadt oder Gemeinde.</p>\n</body>\n</html>";
+	exit;
+}
+
+echo "\n<table class='outer'>\n<tr>\n\t<td>" // linke Seite
+	."\n\t<table class='kennzfs' title='Flurst&uuml;ckskennzeichen'>\n\t<tr>" // darin Tabelle Kennzeichen
+		."\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>"
+		."\n\t<tr>\n\t\t<td title='Gemarkung'>";
 		if ($showkey) {
 			echo "<span class='key'>".$gmkgnr."</span><br>";
 		}
-		echo $gemkname."&nbsp;</td>";
-		echo "\n\t\t<td title='Flurnummer'>".$flurnummer."</td>";
-		echo "\n\t\t<td title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>";
-	echo "\n\t</table>";
-echo "\n\t</td>\n\t<td>"; // rechte Seite
-	// FS-Daten 2 Spalten
-	echo "\n\t<table class='fsd'>";
-		echo "\n\t<tr>\n\t\t<td>Entstehung</td>";
-		echo "\n\t\t<td>".$entsteh."</td>\n\t</tr>";
-		echo "\n\t<tr>";
-			echo "\n\t\t<td>letz. Fortf</td>";
-			echo "\n\t\t<td title='Jahrgang / Fortf&uuml;hrungsnummer - Fortf&uuml;hrungsart'>";
+		echo $gemkname."&nbsp;</td>"
+		."\n\t\t<td title='Flurnummer'>".$flurnummer."</td>"
+		."\n\t\t<td title='Flurst&uuml;cksnummer (Z&auml;hler / Nenner)'><span class='wichtig'>".$flstnummer."</span></td>\n\t</tr>"
+	."\n\t</table>"
+."\n\t</td>\n\t<td>" // rechte Seite
+	."\n\t<table class='fsd'>" // FS-Daten 2 Spalten
+		."\n\t<tr>\n\t\t<td>Entstehung</td>"
+		."\n\t\t<td>".$entsteh."</td>\n\t</tr>"
+		."\n\t<tr>"
+			."\n\t\t<td>letz. Fortf</td>"
+			."\n\t\t<td title='Jahrgang / Fortf&uuml;hrungsnummer - Fortf&uuml;hrungsart'>";
 				foreach($arrn AS $val) { // Zeile f. jedes Element des Array
 					echo trim($val, '"')."<br>";
 				}
-			echo "</td>";
-		echo "\n\t</tr>";
-
-	echo "\n\t</table>";
-echo "\n\t</td>\n</tr>\n</table>";
+			echo "</td>"
+		."\n\t</tr>"
+	."\n\t</table>"
+."\n\t</td>\n</tr>\n</table>";
 //	echo "\n<tr>\n\t<td>Finanzamt</td>\n\t<td>".$finanzamt." ".$finame  . "</td>\n</tr>";
 // Ende Seitenkopf
 
-echo "\n<hr>";
-echo "\n<p class='nwlink noprint'>weitere Auskunft:</p>"; // oben rechts von der Tabelle
-echo "\n<table class='fs'>";
+echo "\n<hr>"
+."\n<p class='nwlink noprint'>weitere Auskunft:</p>" // oben rechts von der Tabelle
+."\n<table class='fs'>";
 
 // ** G e b i e t s z u g e h o e r i g k e i t **
@@ -195,14 +206,14 @@
 	echo "<span class='key'>(".$gemeinde.")</span> ";
 }
-echo $gnam."</td><td width='80'>";  // Mindest-Breite der Spalte fuer die Links 
-	// Link zur FlurstÃŒcks-Historie (passt nicht ganz in die Zeile "Gemeinde", aber gut unter "weitere Auskunft")
-	echo "\n<p class='nwlink noprint'>";
-		echo "\n\t<a href='alkisfshist.php?gkz=".$gkz."&amp;gmlid=".$gmlid;
+// Link zur FS-Historie (passt nicht ganz in die Zeile "Gemeinde", aber gut unter "weitere Auskunft")
+echo $gnam."</td><td class='nwlink'>"
+	."\n<p class='nwlink noprint'>"
+		."\n\t<a href='alkisfshist.php?gkz=".$gkz."&amp;gmlid=".$gmlid;
 			if ($showkey)   {echo "&amp;showkey=j";}
-			echo "' title='Vorg&auml;nger-Flurst&uuml;cke'>Historie ";
-			echo "<img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''>";
-		echo "</a>";
-	echo "\n</p>";
-echo "</td></tr>";
+			echo "' title='Vorg&auml;nger-Flurst&uuml;cke'>Historie "
+			."<img src='ico/Flurstueck_Historisch.png' width='16' height='16' alt=''>"
+		."</a>"
+	."\n</p>"
+. "</td></tr>";
 pg_free_result($res);
 
@@ -275,17 +286,16 @@
 				echo "<td>&nbsp;</td>";
 			}
-			echo "\n\t<td>&nbsp;</td>";
-			echo "\n\t<td class='lr'>";
+			echo "\n\t<td>&nbsp;</td>"
+			."\n\t<td class='lr'>";
 			if ($showkey) {
 				echo "<span class='key' title='StraÃenschl&uuml;ssel'>(".$row["lage"].")</span>&nbsp;";
 			}
-			echo $sname."&nbsp;".$row["hausnummer"]."</td>";
-			echo "\n\t<td>\n\t\t<p class='nwlink noprint'>";
-				echo "\n\t\t\t<a title='Lagebezeichnung mit Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;ltyp=m&amp;gmlid=".$row["gml_id"];
+			echo $sname."&nbsp;".$row["hausnummer"]."</td>"
+			."\n\t<td>\n\t\t<p class='nwlink noprint'>"
+				."\n\t\t\t<a title='Lagebezeichnung mit Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;ltyp=m&amp;gmlid=".$row["gml_id"];
 				if ($showkey) {echo "&amp;showkey=j";}
-				echo "'>Lage ";
-				echo "<img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a>";
-			echo "\n\t\t</p>\n\t</td>";
-		echo "\n</tr>";
+				echo "'>Lage <img src='ico/Lage_mit_Haus.png' width='16' height='16' alt=''></a>"
+			."\n\t\t</p>\n\t</td>"
+		."\n</tr>";
 		$j++;
 	}
@@ -317,31 +327,31 @@
 	$lgml=$row["gml_id"]; // key der Lage
 	if (!$gewann == "") {
-		echo "\n<tr>";
-			echo "\n\t<td class='ll' title='Lagebezeichnung'><img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''> Gewanne:</td>";
-			echo "\n\t<td></td>";
-			echo "\n\t<td class='lr'>".$gewann."</td>";
-			echo "\n\t<td>\n\t\t<p class='nwlink noprint'>";
-				echo "\n\t\t\t<a title='Lagebezeichnung Ohne Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;ltyp=o&amp;gmlid=".$lgml;
+		echo "\n<tr>"
+			."\n\t<td class='ll' title='Lagebezeichnung'><img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''> Gewanne:</td>"
+			."\n\t<td></td>"
+			."\n\t<td class='lr'>".$gewann."</td>"
+			."\n\t<td>\n\t\t<p class='nwlink noprint'>"
+				."\n\t\t\t<a title='Lagebezeichnung Ohne Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;ltyp=o&amp;gmlid=".$lgml;
 				if ($showkey) {echo "&amp;showkey=j";}				
-				echo "'>\n\t\t\tLage <img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''></a>";
-			echo "\n\t\t</p>\n\t</td>";
-		echo "\n</tr>";
+				echo "'>\n\t\t\tLage <img src='ico/Lage_Gewanne.png' width='16' height='16' alt=''></a>"
+			."\n\t\t</p>\n\t</td>"
+		."\n</tr>";
 	}
 	// Gleicher DB-Eintrag in zwei HTML-Zeilen, besser nur ein Link
 	if ($skey > 0) {
-		echo "\n<tr>";
-			echo "\n\t<td class='ll'><img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''> Stra&szlig;e:</td>";
-			echo "\n\t<td></td>";
-			echo "\n\t<td class='lr'>";
+		echo "\n<tr>"
+			."\n\t<td class='ll'><img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''> Stra&szlig;e:</td>"
+			."\n\t<td></td>"
+			."\n\t<td class='lr'>";
 			if ($showkey) {
 				echo "<span class='key'>(".$skey.")</span>&nbsp;";
 			}
-			echo $row["bezeichnung"]."</td>";
-			echo "\n\t<td>\n\t\t<p class='nwlink noprint'>";
-				echo "\n\t\t\t<a title='Lagebezeichnung Ohne Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;ltyp=o&amp;gmlid=".$lgml;
+			echo $row["bezeichnung"]."</td>"
+			."\n\t<td>\n\t\t<p class='nwlink noprint'>"
+				."\n\t\t\t<a title='Lagebezeichnung Ohne Hausnummer' href='alkislage.php?gkz=".$gkz."&amp;ltyp=o&amp;gmlid=".$lgml;
 				if ($showkey) {echo "&amp;showkey=j";}				
-				echo "'>\n\t\t\tLage <img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''>\n\t\t\t</a>";
-			echo "\n\t\t</p>\n\t</td>";
-		echo "\n</tr>";
+				echo "'>\n\t\t\tLage <img src='ico/Lage_an_Strasse.png' width='16' height='16' alt=''>\n\t\t\t</a>"
+			."\n\t\t</p>\n\t</td>"
+		."\n</tr>";
 	}
 	$j++;
@@ -507,9 +517,4 @@
 	$title=htmlentities($defi, ENT_QUOTES, "UTF-8"); // .. fÃŒr Anzeige aufbereitet
 
-	// Aus der Definition den String zwischen den ersten '' ausschneiden
-	$pos = strpos($defi, "'") + 1;
-	$len = strpos($defi, "'", $pos) - $pos;
-	$nutztab=substr($defi, $pos, $len); // Nutzungart Kategorie aus der Beschreibung ausschneiden
-
 	echo "\n<tr>\n\t";
 		if ($j == 0) {
@@ -523,7 +528,7 @@
 		echo "\n\t<td class='lr' title='".$title."'>";
 			if ($showkey) {echo "<span class='key'>(".$nutzsl.")</span> ";}
-			echo $nutztab.", ".$nutzung;
-		echo "</td>";
-		echo "\n\t<td>";
+			echo $nutzung
+		."</td>"
+		."\n\t<td>";
 /*		//	Derzeit ist keine Gruppe zugeordnet
 			switch ($grupp) { // Icon nach 4 Objektartengruppen
@@ -537,6 +542,6 @@
 			echo "<p class='nwlink'><img title='".$title."' src='ico/".$ico."' width='16' height='16' alt='NUA'></p>";
 */
-		echo "</td>";
-	echo "\n</tr>";
+		echo "</td>"
+	."\n</tr>";
 	$j++;
 }
@@ -544,13 +549,13 @@
 // ENDE  N U T Z U N G
 
-echo "\n<tr>"; // Summenzeile
-	echo "\n\t<td class='ll' title='amtliche Fl&auml;che (Buchfl&auml;che)'>Fl&auml;che:</td>";
-	echo "\n\t<td class='fla sum'>";
-	echo "<span title='geometrisch berechnete Fl&auml;che = ".$fsgeomflaed."' class='flae'>".$fsbuchflaed."</span></td>";
+echo "\n<tr>" // Summenzeile
+	."\n\t<td class='ll' title='amtliche Fl&auml;che (Buchfl&auml;che)'>Fl&auml;che:</td>"
+	."\n\t<td class='fla sum'>"
+	."<span title='geometrisch berechnete Fl&auml;che = ".$fsgeomflaed."' class='flae'>".$fsbuchflaed."</span></td>";
 
 	// Flaeche und Link auf GebÃ€ude-Auswertung
-	echo "\n\t<td>&nbsp;</td>\n\t<td>";
-		echo "\n\t\t<p class='nwlink noprint'>"; // Gebaeude-Verschneidung
-			echo "\n\t\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&amp;gmlid=".$gmlid;
+	echo "\n\t<td>&nbsp;</td>\n\t<td>"
+		."\n\t\t<p class='nwlink noprint'>" // Gebaeude-Verschneidung
+			."\n\t\t\t<a href='alkisgebaeudenw.php?gkz=".$gkz."&amp;gmlid=".$gmlid;
 			if ($showkey) {echo "&amp;showkey=j";}
 			if ($cnt_adressen > 0) { // wenn Adresse vorgekommen ist
@@ -559,8 +564,8 @@
 				echo "' title='Suche Geb&auml;ude ohne Adresse auf dem Flurst&uuml;ck oder angrenzende Geb&auml;ude'>Suche ";
 			}
-			echo "<img src='ico/Haus.png' width='16' height='16' alt=''></a>";
-		echo "\n\t\t</p>";
-	echo "\n\t</td>";
-echo "\n</tr>";
+			echo "<img src='ico/Haus.png' width='16' height='16' alt=''></a>"
+		."\n\t\t</p>"
+	."\n\t</td>"
+."\n</tr>";
 
 // H i n w e i s  auf Bodenneuordnung oder eine strittige Grenze
@@ -594,8 +599,8 @@
 
 if (pg_num_rows($res_bodeneuordnung) > 0 OR pg_num_rows($res_strittigeGrenze) > 0) {
-	echo "\n<tr>";
-	echo "\n\t<td title='Hinweise zum Flurst&uuml;ck'><h6><img src='ico/Hinweis.png' width='16' height='16' alt=''> ";
-	echo "Hinweise:</td></h6>\n\t<td colspan=3>&nbsp;</td>";
-	echo "\n</tr>";
+	echo "\n<tr>"
+	."\n\t<td title='Hinweise zum Flurst&uuml;ck'><h6><img src='ico/Hinweis.png' width='16' height='16' alt=''> "
+	."Hinweise:</h6></td>\n\t<td colspan=3>&nbsp;</td>"
+	."\n</tr>";
 
 	if (pg_num_rows($res_bodeneuordnung) > 0) {
@@ -606,15 +611,15 @@
 			echo "\n<tr title='Bau-, Raum- oder Bodenordnungsrecht'>"
 				."\n\t<td>Bodenrecht:</td>"
-				."\n\t<td>Festlegung</td>"; // "Art der Festlegung" zu lang
-				echo "\n\t<td>";
+				."\n\t<td>Festlegung</td>" // "Art der Festlegung" zu lang
+				."\n\t<td>";
 					if ($showkey) {echo "<span class='key'>(".$row['wert'].")</span> ";}
 					echo $row['art_verf']
 				."</td>\n\t<td>";
 				// LINK:
-				echo "\n\t\t<p class='nwlink noprint'>";
-					echo "\n\t\t\t<a href='alkisbaurecht.php?gkz=".$gkz."&amp;gmlid=".$row['verf_gml'];
+				echo "\n\t\t<p class='nwlink noprint'>"
+					."\n\t\t\t<a href='alkisbaurecht.php?gkz=".$gkz."&amp;gmlid=".$row['verf_gml'];
 					if ($showkey) {echo "&amp;showkey=j";}
-					echo "' title='Bau-, Raum- oder Bodenordnungsrecht'>Recht <img src='ico/Gericht.png' width='16' height='16' alt=''></a>";
-				echo "\n\t\t</p>"		
+					echo "' title='Bau-, Raum- oder Bodenordnungsrecht'>Recht <img src='ico/Gericht.png' width='16' height='16' alt=''></a>"
+				."\n\t\t</p>"		
 				."</td>"
 			."\n</tr>";
@@ -623,11 +628,11 @@
 			$dstell=$row['stelle_key'];
 			if ($dstell != "") { // Kann auch leer sein
-				echo "\n<tr title='Flurbereinigungsbeh&ouml;rde'>";
-					echo "\n\t<td>&nbsp;</td>"
+				echo "\n<tr title='Flurbereinigungsbeh&ouml;rde'>"
+					."\n\t<td>&nbsp;</td>"
 					."\n\t<td>Dienststelle</td>"
 					."\n\t<td>";
 						if ($showkey) {echo "<span class='key'>(".$dstell.")</span> ";}
-						echo $row['stelle_bez'];
-					echo "</td>"
+						echo $row['stelle_bez']
+					."</td>"
 					."\n\t<td>&nbsp;</td>"
 				."\n</tr>";
@@ -638,7 +643,7 @@
 			$vnam=$row['verf_name']; // noch seltener
 			if ($vbez != "") {
-				echo "\n<tr title='Verfahrensbezeichnung'>";
-					echo "\n\t<td>&nbsp;</td>\n\t<td>Verfahren</td>";
-					echo "\n\t<td>";
+				echo "\n<tr title='Verfahrensbezeichnung'>"
+					."\n\t<td>&nbsp;</td>\n\t<td>Verfahren</td>"
+					."\n\t<td>";
 						if ($vnam == "") {
 							echo $vbez; // nur die Nummer
@@ -647,7 +652,7 @@
 							echo $vnam;
 						}
-		 			echo "</td>";
-					echo "\n\t<td>&nbsp;</td>";
-				echo "\n</tr>";
+		 			echo "</td>"
+					."\n\t<td>&nbsp;</td>"
+				."\n</tr>";
 			}
 		}
@@ -665,5 +670,5 @@
 	."\n<tr>"
 		."\n\t<td>"
-			."\n\t\t<a name='gb'></a>\n\t\t<h3><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Grundb&uuml;cher</h3>"
+			."\n\t\t<a id='gb'></a>\n\t\t<h3><img src='ico/Grundbuch_zu.png' width='16' height='16' alt=''> Grundb&uuml;cher</h3>"
 		."\n\t</td>"
 		."\n\t<td>"
@@ -748,15 +753,12 @@
 						."\n\t\t<td title='Grundbuchbezirk'>";
 							if ($showkey) {echo "<span class='key'>".$rowg["bezirk"]."</span><br>";}
-						echo $beznam."&nbsp;</td>";
-
-						echo "\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowg["blatt"]."</span></td>";
-
-						echo "\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundst&uuml;ck)'>".$rows["lfd"]."</td>";
-
-						echo "\n\t\t<td title='".$barttitle."'>";
+						echo $beznam."&nbsp;</td>"
+						."\n\t\t<td title='Grundbuch-Blatt'><span class='wichtig'>".$rowg["blatt"]."</span></td>"
+						."\n\t\t<td title='Bestandsverzeichnis-Nummer (BVNR, Grundst&uuml;ck)'>".$rows["lfd"]."</td>"
+						."\n\t\t<td title='".$barttitle."'>";
 						if ($showkey) {echo "<span class='key'>".$rows["buchungsart"]."</span><br>";}
-						echo $rows["bart"]."</td>";
-					echo "\n\t</tr>";
-				echo "\n\t</table>";
+						echo $rows["bart"]."</td>"
+					."\n\t</tr>"
+				."\n\t</table>";
 
 				// Miteigentumsanteil
@@ -814,18 +816,13 @@
 echo <<<END
 
-<form action=''>
-	<div class='buttonbereich noprint'>
-	<hr>
-		<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
-		<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
-		<a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download_fs.png" width="32" height="16" alt="Export"></a>&nbsp;
-	</div>
-</form>
+<div class='buttonbereich noprint'>
+<hr>
+	<a title="zur&uuml;ck" href='javascript:history.back()'><img src="ico/zurueck.png" width="16" height="16" alt="zur&uuml;ck"></a>&nbsp;
+	<a title="Drucken" href='javascript:window.print()'><img src="ico/print.png" width="16" height="16" alt="Drucken"></a>&nbsp;
+	<a title="Export als CSV" href='javascript:ALKISexport()'><img src="ico/download_fs.png" width="32" height="16" alt="Export"></a>&nbsp;
+</div>
 END;
-
 footer($gmlid, $_SERVER['PHP_SELF']."?", "&amp;eig=".$eig);
-
 ?>
-
 </body>
 </html>
Index: trunk/info/info/alkisn/alkisauszug.css
===================================================================
--- trunk/info/info/alkisn/alkisauszug.css	(revision 375)
+++ trunk/info/info/alkisn/alkisauszug.css	(revision 377)
@@ -1,4 +1,4 @@
 /*	Modul: alkisauszug.css
-	S t y l e s zur ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo).
+	S t y l e s  zur ALKIS-Buchauskunft, Kommunales Rechenzentrum Minden-Ravensberg/Lippe (Lemgo).
 
 	Version:
@@ -14,4 +14,5 @@
 	2014-12-30	Neu: td.fsnr
 	2016-02-24	Umstellung norBIT-Struktur
+	2016-12-01	Stop-Meldung bei BerechtigungsprÃŒfung, Sortierspalten
 */
 body	{background-color: #FDFFFD;}
@@ -23,5 +24,4 @@
 p.fsausk	{background-color: teal; color: silver;}	/* Uebersichts-Seite Flurstuecks-Auskunft */
 p.fskennz,p.fsei{background-color: navy; color: silver;}	/* Flurstuecks-Nachweis */
-/* p.fsei	{background-color: olive; color: silver;}*/	/* Flurstuecks- und Eigentuemer-Nachweis */
 p.fshis		{background-color: gray; color: white;}		/* Flurstuecks-Historie */
 p.gbkennz	{background-color: green; color: silver;}	/* Bestandsnachweis */
@@ -90,4 +90,5 @@
 td.lr	{color: black;}	/* Liste Rechts */
 td.ph	{color: gray;}	/* Platzhalter, vorlaeufig, spaeter loschen */
+td.erkl	{color: silver; font-size: 8pt;}	/* ErklÃ€rungen, nur klein (Haus) */
 
 td.fla	{width: 110px; padding-right: 4px; text-align: right;} /* Flaechen rechtsbuendig (stellengerecht) */
@@ -100,9 +101,13 @@
 td.sond, p.sond	{font-size: 9pt; font-style: italic; background-color: white;
 		border: 1px dotted silver; padding: 6px;}	/* Sondereigentumsbeschreibung */
+td.nrap, p.nrap	{font-size: 9pt; font-style: italic; background-color: white;}	/* Nummer im Aufteilungsplan */
+td.fett	{font-weight: bold;}
+/* td.nwlink {width: 80px;} */	/* Link zum Nachweis */
 
-td.nrap, p.nrap	{font-size: 9pt; font-style: italic; background-color: white;}	/* Nummer im Aufteilungsplan */
+/* Kopfzeile, Spaltenueberschrift */
+td.head, td.heads{font-style: italic; padding-top: 2px;}	
+td.head	{border-bottom: 1px solid gray;}	
+td.heads	{border-bottom: 1px solid black;}	/* Kopf Sortierspalte(n) */
 
-td.fett	{font-weight: bold;}
-td.head	{border-bottom: 1px solid gray; font-style: italic; padding-top: 2px;}	/* Kopfzeile, Spaltenueberschrift */
 td.sum {border-top: 2px dotted maroon;	border-bottom:3px solid maroon;
 	border-left:0px dotted maroon;	border-right:0px dotted maroon; font-weight: bold;}	/* unter dem Strich = Summenzeile */
@@ -111,5 +116,5 @@
 td.nam	{font-weight: bold;}
 td.gbl	{border-bottom: 1px dotted green;}	/* Name: GB-Liste */
-/* Inlay analog Template: linke Tabellenspalte - Feldname */
+/* Inlay analog WMS-Feature-Info Template: linke Tabellenspalte - Feldname */
 td.li, td.gr {color:gray; padding-left: 8px; padding-right:8px; border-bottom: 0px; vertical-align:top;}
 /* dienendes GB in FS-Tab im Best-NW  */
@@ -129,9 +134,14 @@
 h4 {	color: black;	font-size: 11pt;}
 h5 {	color: black;	font-size: 10pt;}
-h6 {	color: black;	font-size:  9pt; margin-top: 2pt; margin: 0pt}	/* FS in Best-NW */
+h6 {	color: black;	font-size:  9pt; margin-top: 2pt; margin: 0pt;}	/* FS in Best-NW */
 
 img	{border: 0px; margin: 0px;} /* Icons */
 
 iframe.inlay {border:0px; width: 100%;} /* height: 400px; */
+
+/* Abbruch, Fehler der Berechtigung */
+p.stop1, p.stop2  {text-align: center; color: red;}
+p.stop1 {font-size: 14pt; margin: 4pt;}
+p.stop2 {font-size: 10pt;}
 
 /* Seitenfuss */
Index: trunk/info/info/alkisn/alkisexport.php
===================================================================
--- trunk/info/info/alkisn/alkisexport.php	(revision 375)
+++ trunk/info/info/alkisn/alkisexport.php	(revision 377)
@@ -6,18 +6,20 @@
 	Der View verkettet Flurstueck - Buchungsstelle - Grundbuch - Eigentuemer
 	Die Lagebezeichnung des FlurstÃŒcks wird in ein Feld komprimiert.
-	Parameter: 
-		alkisexport.php?gkz=mandant&tabtyp=flurstueck/grundbuch/person&gmlid=DE...
-		alkisexport.php?gkz=270&tabtyp=gemarkung&gemarkung=2662   
-		alkisexport.php?gkz=270&gemarkung=2662
-
-	Fehler
-		alkisexport.php?gkz=270&tabtyp=gemarkung&gmlid=2662
-		alkisexport.php?gkz=270&tabtyp=flurstueck&gemarkung=2662
-		alkisexport.php?gkz=270&tabtyp=flurstueck
-		alkisn/alkisexport.php?gkz=270&gmlid=2662
+	Parameter Beispiele: 
+		?gkz=mandant&tabtyp=flurstueck/grundbuch/person&gmlid=DE...
+		?gkz=270&tabtyp=gemarkung&gemarkung=2662   
+		?gkz=270&gemarkung=2662
+	Parameter Beispiele fÃŒr Fehler:
+		?gkz=270&tabtyp=gemarkung&gmlid=2662
+		?gkz=270&tabtyp=flurstueck&gemarkung=2662
+		?gkz=270&tabtyp=flurstueck
+		?gkz=270&gmlid=2662
 
 	Version
 	2016-02-23 Version fuer norGIS-ALKIS-Import
 	2016-10-18 Export einer ganzen Gemarkung zulassen (Sonderfall bei den Parametern)
+	2016-11-29 Gemeinsam genutzte Datenbanken ermÃ¶glichen
+
+++ ToDo: SQL "exp_csv_str" und "exp_csv_str" optimieren
 */
 
@@ -92,5 +94,5 @@
 
 // Datenbank-Verbindung
-$con = pg_connect("host=".$dbhost." port=" .$dbport." dbname=".$dbname." user=".$dbuser." password=".$dbpass);
+$con = pg_connect($dbconn." options='--application_name=ALKIS-Auskunft_alkisexport.php'");
 if (!$con) {exit("Fehler beim Verbinden der DB");}
 pg_set_client_encoding($con, 'LATIN1'); // FÃŒr Excel kein UTF8 ausgeben
