pg_prepare + pg_execute)
26.01.2011 Space in leere td
01.02.2011 *Left* Join - Fehlertoleranz bei unvollstaendigen Schluesseltabellen
02.11.2011 $sqla, $sqlg, Meldungen mit $debug steuern
17.11.2011 Parameter der Functions geändert
ToDo:
Sortierung der Grundbücher zum Namen
Mehrere Adressen zum Namen? Historische ausblenden/markieren?
*/
ini_set('error_reporting', 'E_ALL & ~ E_NOTICE');
session_start();
$gkz=urldecode($_REQUEST["gkz"]);
require_once("alkis_conf_location.php");
if ($auth == "mapbender") {require_once($mapbender);}
include("alkisfkt.php");
?>
ALKIS Person und Adresse
ALKIS Name id=".$gmlid." \n";
echo "\n Person \n";
if (!$con) "\nFehler beim Verbinden der DB
\n";
$sql="SELECT nachnameoderfirma, anrede, vorname, geburtsname, geburtsdatum, namensbestandteil, akademischergrad ";
$sql.="FROM ax_person WHERE gml_id= $1;";
$v = array($gmlid);
$res = pg_prepare("", $sql);
$res = pg_execute("", $v);
if (!$res) {echo "\nFehler bei Zugriff auf Namensnummer
\n";}
if ($idanzeige) { linkgml($gkz, $gmlid, "Person"); }
if ($row = pg_fetch_array($res)) {
$vor=htmlentities($row["vorname"], ENT_QUOTES, "UTF-8");
$nam=htmlentities($row["nachnameoderfirma"], ENT_QUOTES, "UTF-8");
$geb=htmlentities($row["geburtsname"], ENT_QUOTES, "UTF-8");
$anr=anrede($row["anrede"]);
$aka=$row["akademischergrad"];
echo "\n";
echo "\tAnrede: ".$anr." \n";
echo "\tNachname oder Firma: ".$nam." \n";
echo "\tVorname: ".$vor." \n";
echo "\tGeburtsname: ".$geb." \n";
echo "\tGeburtsdatum: ".$row["geburtsdatum"]." \n";
echo "\tNamensbestandteil: ".$row["namensbestandteil"]." \n";
echo "\takademischer Grad: ".$aka." \n";
echo "\n
\n \n";
// A d r e s s e
echo "\n Adresse \n";
$sqla ="SELECT a.gml_id, a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer, a.bestimmungsland ";
$sqla.="FROM ax_anschrift a ";
$sqla.="JOIN alkis_beziehungen b ON a.gml_id=b.beziehung_zu ";
$sqla.="WHERE b.beziehung_von= $1 ";
$sqla.="AND b.beziehungsart='hat';"; //"ORDER BY ?;";
$v = array($gmlid);
$resa = pg_prepare("", $sqla);
$resa = pg_execute("", $v);
if (!$resa) {
echo "\nFehler bei Adressen
\n";
if ($debug > 2) {
echo "SQL= ".$sqla." $1=gml(Person)= '".$gmlid."'
\n";
}
}
$j=0;
while($rowa = pg_fetch_array($resa)) {
$gmla=$rowa["gml_id"];
$plz=$rowa["plz"];
$ort=htmlentities($rowa["ort_post"], ENT_QUOTES, "UTF-8");
$str=htmlentities($rowa["strasse"], ENT_QUOTES, "UTF-8");
$hsnr=$rowa["hausnummer"];
$land=htmlentities($rowa["bestimmungsland"], ENT_QUOTES, "UTF-8");
if ($idanzeige) { linkgml($gkz, $gmla, "Adresse"); }
echo "\n";
echo "\tPLZ: ".$plz." \n";
echo "\tOrt: ".$ort." \n";
echo "\tStrasse: ".$str." \n";
echo "\tHausnummer: ".$hsnr." \n";
echo "\tLand: ".$land." \n";
echo "\n
\n \n";
$j++;
// Name und Adresse Kompakt (im Rahmen)
// Alles was man fuer ein Anschreiben braucht
echo " "; // Symbol "Brief"
echo "\n".$anr." ".$aka." ".$vor." ".$nam." ";
echo "\n".$str." ".$hsnr." ";
echo "\n".$plz." ".$ort."
";
}
if ($j == 0) {echo "\nKeine Adressen.
\n";}
// *** G R U N D B U C H ***
echo "\n \n Grundbücher \n";
// person istBestandteilVon> Buchungsblatt
// >bestehtAusRechtsverhaeltnissenZu> namensnummer (Nebenzweig/Sonderfälle?)
$sqlg ="SELECT n.gml_id AS gml_n, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, ";
$sqlg.="g.gml_id AS gml_g, g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung as nr, g.blattart, ";
$sqlg.="b.bezeichnung AS beznam ";
$sqlg.="FROM alkis_beziehungen bpn ";
$sqlg.="JOIN ax_namensnummer n ON bpn.beziehung_von=n.gml_id ";
$sqlg.="JOIN alkis_beziehungen bng ON n.gml_id=bng.beziehung_von ";
$sqlg.="JOIN ax_buchungsblatt g ON bng.beziehung_zu=g.gml_id ";
$sqlg.="LEFT JOIN ax_buchungsblattbezirk b ON g.land = b.land AND g.bezirk = b.bezirk ";
$sqlg.="WHERE bpn.beziehung_zu= $1 ";
$sqlg.="AND bpn.beziehungsart='benennt' AND bng.beziehungsart='istBestandteilVon' ";
$sqlg.="ORDER BY g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung;";
// buchungsblatt... mal mit und mal ohne fuehrende Nullen, bringt die Sortierung durcheinander
$v = array($gmlid);
$resg = pg_prepare("", $sqlg);
$resg = pg_execute("", $v);
if (!$resg) {
echo "\nFehler bei Grundbuch
\n";
if ($debug > 2) {
echo "\nSQL=".$sqlg."
\n";
}
}
$j=0;
echo "";
echo "\n";
echo "\n\tBezirk ";
echo "\n\tBlattart ";
echo "\n\tBlatt ";
echo "\n\tNamensnummer ";
echo "\n\tAnteil ";
echo "\n\tweit. Auskunft ";
echo "\n ";
while($rowg = pg_fetch_array($resg)) {
$gmln=$rowg["gml_n"];
$gmlg=$rowg["gml_g"];
$namnum=kurz_namnr($rowg["lfd"]);
$zae=$rowg["zaehler"];
$blattkey=$rowg["blattart"];
$blattart=blattart($blattkey);
echo "\n";
echo "\n\t"; // GB-Bezirk"
if ($showkey) {
echo "".$rowg["bezirk"]." ";
}
echo $rowg["beznam"];
echo " ";
echo "\n\t"; // Blattart
if ($showkey) {
echo "".$blattkey." ";
}
echo $blattart;
echo " ";
echo "\n\t"; // Blatt
echo "".$rowg["nr"]." ";
if ($idanzeige) {
linkgml($gkz, $gmlg, "Grundbuchblatt");
}
echo " ";
echo "\n\t"; // Namensnummer
If ($namnum == "") {
echo " ";
} else {
echo $namnum;
}
if ($idanzeige) {
linkgml($gkz, $gmln, "Namensnummer");
}
echo " ";
echo "\n\t"; // Anteil
If ($zae == "") {
echo " ";
} else {
echo $zae."/".$rowg["nenner"]." Anteil";
}
echo " ";
echo "\n\t";
echo "\n\t\t";
echo "\n\t\t\t";
echo $blattart;
echo "\n\t\t\t ";
echo "\n\t\t
";
echo "\n\t ";
echo "\n ";
// +++ >bestehtAusRechtsverhaeltnissenZu> namensnummer ??
// z.B. eine Namennummer "Erbengemeinschaft" zeigt auf Namensnummern mit Eigentümern
$i++;
}
echo "
";
if ($i == 0) {echo "\nKein Grundbuch.
\n";}
} else {
echo "\n\tFehler! Kein Treffer für\n\t".$gmlid." \n
\n\n";
}
?>