Fehler bei der Verbindung zur Datenbank

".$dbname.$dbvers.$gkz); ?> ALKIS-Suche Eigentümer 0)) { $sql.="JOIN gemeinde_person g ON p.gml_id = g.person WHERE "; switch ($gfilter) { case 1: // Einzelwert $sql.="g.gemeinde=".$gemeinde." AND "; break; case 2: // Liste $sql.="g.gemeinde in (".$gemeinde.") AND "; break; } } else { $sql.="WHERE "; } if($match1 != '%'){ $sql.="nachnameoderfirma ILIKE $1 AND p.vorname ILIKE $2 "; $sql.="ORDER BY p.nachnameoderfirma, p.vorname LIMIT $3 ;"; $v=array($match, $match1, $linelimit); }else{ $sql.="nachnameoderfirma ILIKE $1 "; $sql.="ORDER BY p.nachnameoderfirma, p.vorname LIMIT $2 ;"; $v=array($match, $linelimit); } $res=pg_prepare("", $sql); $res=pg_execute("", $v); if (!$res) { echo "\n

Fehler bei Eigentümer

"; return; } $cnt = 0; while($row = pg_fetch_array($res)) { $nnam=htmlentities($row["nachnameoderfirma"], ENT_QUOTES, "UTF-8"); $vnam=htmlentities($row["vorname"], ENT_QUOTES, "UTF-8"); $gml=$row["gml_id"]; // Link zur Auskunft Person +++ Icon differenzieren? Firma/Person echo "\n\t"; echo "\n\t\tEIG"; echo "\n\t "; echo "\n".$nnam.", ".$vnam."\n
"; $cnt++; } if($cnt == 0){ echo "\n

Keine Person.

"; } elseif($cnt >= $linelimit) { echo "\n

... und weitere

"; } elseif($cnt == 1){ // Eindeutig! $person = $gml; } return; } function getGBbyPerson() { // 2 ================================= // Grundbücher zur gewählten Person // =================================== global $gkz, $gemeinde, $epsg, $con, $name, $person, $gb, $auskpath; $linelimit=120; if(isset($name)) { // Familiensuche echo "\n
"; echo "\n\t\tFAM "; echo "\n\"".$name."\""; echo "\n
\n
"; } $sql="SELECT p.nachnameoderfirma, p.vorname, p.geburtsdatum, p.namensbestandteil, "; $sql.="a.ort_post, a.postleitzahlpostzustellung AS plz, a.strasse, a.hausnummer "; $sql.="FROM ax_person p "; $sql.="JOIN alkis_beziehungen b ON p.gml_id=b.beziehung_von "; $sql.="JOIN ax_anschrift a ON a.gml_id=b.beziehung_zu "; $sql.="WHERE p.gml_id= $1 AND b.beziehungsart='hat';"; $v=array($person); $res=pg_prepare("", $sql); $res=pg_execute("", $v); if (!$res) {echo "\n

Fehler bei Name

\n";} // Daten der Person echo "\n\t\n\t\n\t\t\n\t\t\n\t
"; // Sp. 1: Icon, Link zur Auskunft Person echo "\n\t"; echo "\n\t\tEIG"; echo "\n\t"; echo "\n\t

"; // Sp. 2: Rahmen if ($row = pg_fetch_array($res)) { $namzeil=$row["nachnameoderfirma"].", ".$row["vorname"]; $gebdat=$row["geburtsdatum"]; if ($gebdat != "") {$namzeil.= ", geb. ".$gebdat;} $best=$row["namensbestandteil"]; if ($best != "") {$namzeil.= ", ".$best;} echo htmlentities($namzeil, ENT_QUOTES, "UTF-8"); $namzeil=$row["plz"]." ".$row["ort_post"]; if (trim($namzeil) != "") {echo "\n\t
".htmlentities($namzeil, ENT_QUOTES, "UTF-8");} $namzeil=$row["strasse"]." ".$row["hausnummer"]; if (trim($namzeil) != "") {echo "\n\t
".htmlentities($namzeil, ENT_QUOTES, "UTF-8");} } echo "\n\t

"; // Suche nach Grundbüchern der Person $sql ="SELECT g.gml_id AS gml_g, g.buchungsblattnummermitbuchstabenerweiterung as nr, 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.="JOIN ax_buchungsblattbezirk b ON g.land = b.land AND g.bezirk = b.bezirk "; $sql.="WHERE bpn.beziehung_zu= $1 AND bpn.beziehungsart='benennt' AND bng.beziehungsart='istBestandteilVon' "; $sql.="ORDER BY g.bezirk, g.buchungsblattnummermitbuchstabenerweiterung LIMIT $2 ;"; $v=array($person, $linelimit); $res=pg_prepare("", $sql); $res=pg_execute("", $v); if (!$res) { echo "\n

Fehler bei Grundbuch

"; return; } $cnt = 0; while($row = pg_fetch_array($res)) { $gml=$row["gml_g"]; $beznam=$row["beznam"]; $nr=$row["nr"]; echo "\n
"; echo "\n\t"; echo "\n\t\tGB"; echo "\n\t "; echo "\n\t".$beznam." Blatt ".$nr." "; echo "\n
"; $cnt++; } if($cnt == 0){ echo "\n

Kein Grundbuch.

"; } elseif($cnt >= $linelimit) { echo "\n

... und weitere

"; } elseif($cnt == 1){ // Eindeutig! $gb=$gml; // dann Stufe 3 gleich nachschieben } return; } function getFSbyGB($backlink) { // 3 ================================= // Flurstücke zum gewählten Grundbuch // =================================== global $gkz, $gemeinde, $con, $name, $person, $gb, $scalefs, $auskpath, $epsg, $gfilter, $persfilter; $linelimit=120; if($backlink) { echo "\n\t
"; echo "\n\t\tEIG "; echo "\n\t"; echo "zurück
"; echo "
"; echo "
"; echo "\n\t"; echo "\n\t\tGB"; echo "\n\t Grundbuch"; echo "
"; } // SQL-Bausteine vorbereiten $sql1 ="SELECT s1.laufendenummer AS lfd, f.gml_id, f.flurnummer, f.zaehler, f.nenner, f.gemeinde, "; if($epsg == "25832") { // Transform nicht notwendig $sql1.="st_x(st_centroid(f.wkb_geometry)) AS x, "; $sql1.="st_y(st_centroid(f.wkb_geometry)) AS y, "; } else { $sql1.="st_x(st_transform(st_centroid(f.wkb_geometry), ".$epsg.")) AS x, "; $sql1.="st_y(st_transform(st_centroid(f.wkb_geometry), ".$epsg.")) AS y, "; } $sql1.="g.gemarkungsnummer, g.bezeichnung "; $sql1.="FROM alkis_beziehungen vbg "; $sql1.="JOIN ax_buchungsstelle s1 ON vbg.beziehung_von = s1.gml_id "; // Zwischen-JOIN (zusätzlich nur bei zweiter Abfrage) $sqlz ="JOIN alkis_beziehungen vss ON vss.beziehung_von = s1.gml_id "; $sqlz.="JOIN ax_buchungsstelle s2 ON vss.beziehung_zu = s2.gml_id "; $sqla1 ="JOIN alkis_beziehungen vfb ON s1.gml_id = vfb.beziehung_zu "; $sqla2 ="JOIN alkis_beziehungen vfb ON s2.gml_id = vfb.beziehung_zu "; $sql2.="JOIN ax_flurstueck f ON vfb.beziehung_von = f.gml_id "; $sql2.="JOIN ax_gemarkung g ON f.land=g.land AND f.gemarkungsnummer=g.gemarkungsnummer "; if ($persfilter and ($gfilter > 0)) { $sql2.="JOIN gemeinde_gemarkung v ON g.land=v.land AND g.gemarkungsnummer=v.gemarkung "; } $sql2.="WHERE vbg.beziehung_zu= $1 AND vbg.beziehungsart='istBestandteilVon' AND vfb.beziehungsart='istGebucht' "; if ($persfilter and ($gfilter > 0)) { switch ($gfilter) { case 1: // Einzelwert $sql2.="AND v.gemeinde=".$gemeinde." "; break; case 2: // Liste $sql2.="AND v.gemeinde in (".$gemeinde.") "; break; } } $sql2.="ORDER BY s1.laufendenummer, f.gemarkungsnummer, f.flurnummer, f.zaehler, f.nenner LIMIT $2 ;"; // Blatt Fehler bei Buchung und Flurstück.

"; if ($debug >= 3) {echo "\n

".$sql."

";} return; } $zfs1=0; while($row = pg_fetch_array($res)) { $fs_gml=$row["gml_id"]; $bvnr=$row["lfd"]; if ($bvnr > 0) {$bvnr=str_pad($bvnr, 4, "0", STR_PAD_LEFT);} else {$bvnr="";} $gmkg=$row["bezeichnung"]; $flur=$row["flurnummer"]; $fskenn=$row["zaehler"]; if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // Bruchnummer $x=$row["x"]; $y=$row["y"]; echo "\n
"; echo "\n\t"; echo "\n\t\tFS"; echo "\n\t "; echo "\n\tFlst. "; echo $bvnr." ".$gmkg." ".$flur."-".$fskenn.""; echo "\n
"; $zfs1++; } // Zweite Abfrage (Variante) aus den Bausteinen zusammen bauen // buchungsStelle2 < an < buchungsStelle1 $sql=$sql1.$sqlz.$sqla2.$sql2; // Rechte an $v=array($gb, $linelimit); $res=pg_prepare("", $sql); $res=pg_execute("", $v); if (!$res) { echo "\n

Fehler bei Recht an Buchung.

"; if ($debug >= 3) {echo "\n

".$sql."

";} return; } $zfs2=0; while($row = pg_fetch_array($res)) { $fs_gml=$row["gml_id"]; $bvnr=$row["lfd"]; if ($bvnr > 0) {$bvnr=str_pad($bvnr, 4, "0", STR_PAD_LEFT);} else {$bvnr="";} $gmkg=$row["bezeichnung"]; $flur=$row["flurnummer"]; $fskenn=$row["zaehler"]; if ($row["nenner"] != "") {$fskenn.="/".$row["nenner"];} // Bruchnummer $x=$row["x"]; $y=$row["y"]; echo "\n
"; echo "\n\t"; echo "\n\t\tFS"; echo "\n\t "; echo "\n\tRecht an "; echo $bvnr." ".$gmkg." ".$flur."-".$fskenn.""; echo "\n
"; $zfs2++; } if($zfs1 + $zfs2 == 0) { echo "\n

Kein Flurstück im berechtigten Bereich.

"; // echo "\n

Hinweis: Sonderfälle wie 'Erbbaurecht' sind noch nicht umgesetzt.

"; } elseif($zfs >= $linelimit) { echo "\n

... und weitere

"; } return; } // =========== // Start hier! // =========== // Parameter: // 1. name = Suche nach Namensanfang oder -bestandteil. // 2. person = gml_id der Person -> Suche nach Grundbüchern // 3. gb = gml_id des Grundbuches -> Suche nach Flurstücken if(isset($epsg)) { if ($debug >= 2) {echo "

aktueller EPSG='".$epsg."'

";} // aus MB $epsg = str_replace("EPSG:", "" , $_REQUEST["epsg"]); } else { if ($debug >= 1) {echo "

kein EPSG gesetzt

";} $epsg=$gui_epsg; // aus Conf } if ($debug >= 2) {echo "

Filter Gemeinde = ".$gemeinde."

";} if ($gemeinde == "") { $gfilter = 0; // ungefiltert } elseif(strpos($gemeinde, ",") === false) { $gfilter = 1; // Einzelwert } else { $gfilter = 2; // Liste } // Welche Parameter? // 3. Stufe: Flurstücke zum Grundbuch if(isset($gb)) { // gml_id // Das Programm hat sich selbst verlinkt aus einer Liste der GB zu einem Eigentümer. // Wenn Parameter mitgegeben wurden, können diese für einen "Link zurück" verwendet werden. getFSbyGB(true); } elseif(isset($person)) { // gml_id - 2. Stufe: Grundbücher zur Person // Das Programm hat sich selbst verlinkt aus einer Liste der Personen zu einer Suchmaske. getGBbyPerson(); if(isset($gb) ) { getFSbyGB(false);} // Es wurde nur EIN Grundbuch zu der Person gefunden. } elseif(isset($name)) { // Suchbegriff aus Form - 1. Stufe: Suche nach Name getEigByName(); if(isset($person)) { getGBbyPerson();} } elseif ($debug >= 2) { echo "\n

Parameter?

"; // Programmfehler } ?>