pg_prepare + pg_execute)
26.01.2011 Space in leere td
01.02.2011 *Left* Join - Fehlertoleranz bei unvollstaendigen Schluesseltabellen
ToDo:
Sortierung der Grundbücher zum Namen
*/
ini_set('error_reporting', 'E_ALL & ~ E_NOTICE');
session_start();
$gkz=urldecode($_REQUEST["gkz"]);
require_once("alkis_conf_location.php");
if ($auth == "mapbender") {
// Bindung an Mapbender-Authentifizierung
require_once($mapbender);
}
include("alkisfkt.php");
?>
ALKIS Person und Adresse
Fehler beim Verbinden der DB\n";
// Balken
echo "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";
$sql ="SELECT a.gml_id, a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer, a.bestimmungsland ";
$sql.="FROM ax_anschrift a ";
$sql.="JOIN alkis_beziehungen b ON a.gml_id=b.beziehung_zu ";
$sql.="WHERE b.beziehung_von= $1 ";
$sql.="AND b.beziehungsart='hat';"; //"ORDER BY ?;";
//echo "\n".$sql."
\n";
$v = array($gmlid);
$resa = pg_prepare("", $sql);
$resa = pg_execute("", $v);
if (!$resa) echo "\nFehler bei Adressen. \nSQL= ".$sql."
\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?)
$sql ="SELECT n.gml_id AS gml_n, n.laufendenummernachdin1421 AS lfd, n.zaehler, n.nenner, ";
$sql.="g.gml_id AS gml_g, g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung as nr, g.blattart, ";
$sql.="b.bezeichnung AS beznam ";
$sql.="FROM alkis_beziehungen bpn ";
$sql.="JOIN ax_namensnummer n ON bpn.beziehung_von=n.gml_id ";
$sql.="JOIN alkis_beziehungen bng ON n.gml_id=bng.beziehung_von ";
$sql.="JOIN ax_buchungsblatt g ON bng.beziehung_zu=g.gml_id ";
$sql.="LEFT JOIN ax_buchungsblattbezirk b ON g.land = b.land AND g.bezirk = b.bezirk ";
$sql.="WHERE bpn.beziehung_zu= $1 ";
$sql.="AND bpn.beziehungsart='benennt' AND bng.beziehungsart='istBestandteilVon' ";
$sql.="ORDER BY g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung;";
// buchungsblatt... mal mit und mal ohne fuehrende Nullen, bringt die Sortierung durcheinander
//echo "\n".$sql."
\n";
$v = array($gmlid);
$resg = pg_prepare("", $sql);
$resg = pg_execute("", $v);
if (!$resg) echo "\nFehler bei Grundbuch. \nSQL= ".$sql."
\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";
}
?>