Changeset 330 for trunk/mapbender/http/nav/alkisnav_adr.php
- Timestamp:
- 09/10/14 12:08:18 (10 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/mapbender/http/nav/alkisnav_adr.php
r309 r330 8 8 2013-05-15 Gruppierung nach Gemeinde, mehrfache HsNr (ap_pto.advstandardmodell) unterdrÃŒcken, Icon f. StraÃe 9 9 2014-01-23 Link zum Auskunft-Modul fÃŒr StraÃe 10 2014-09-03 PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 11 10 12 ToDo: 11 13 - Gruppierung (mit Zeile) der StraÃenliste nach Gemeinde … … 62 64 } 63 65 $sql ="SELECT g.gemeinde, g.bezeichnung AS gemname, k.gml_id, k.bezeichnung, k.schluesselgesamt, k.lage "; 64 $sql.="FROM ax_lagebezeichnungkatalogeintrag ask ";66 $sql.="FROM ax_lagebezeichnungkatalogeintrag k "; 65 67 $sql.="JOIN ax_gemeinde g ON k.land=g.land AND k.regierungsbezirk=g.regierungsbezirk AND k.kreis=g.kreis AND k.gemeinde=g.gemeinde "; 66 $sql.="WHERE k.bezeichnung ILIKE $1 ";68 $sql.="WHERE k.bezeichnung ILIKE $1 AND k.endet IS NULL AND g.endet IS NULL "; 67 69 switch ($gfilter) { 68 70 case 1: // Einzelwert 69 $sql.="AND k.gemeinde= ".$gemeinde."";71 $sql.="AND k.gemeinde='".$gemeinde."' "; 70 72 break; 71 73 case 2: // Liste 72 $sql.="AND k.gemeinde in (". $gemeinde.") ";74 $sql.="AND k.gemeinde in (".str_replace(",", "','", $gemeinde).") "; 73 75 break; 74 76 default: // kein Filter … … 79 81 $res=pg_prepare("", $sql); 80 82 $res=pg_execute("", $v); 81 if (!$res) {return "\n<p class='err'>Fehler bei Name</p>";} 83 84 if (!$res) { 85 echo "\n<p class='err'>Fehler bei Name</p>"; 86 if ($debug > 2) {echo "<p class='dbg'>SQL = '".$sql."'<p>";} 87 return; 88 } 89 82 90 $cnt = 0; 83 91 $gwgem=""; … … 134 142 switch ($gfilter) { 135 143 case 1: // Einzelwert 136 $sql.="AND k.gemeinde= ".$gemeinde."";144 $sql.="AND k.gemeinde='".$gemeinde."' "; 137 145 break; 138 146 case 2: // Liste 139 $sql.="AND k.gemeinde in ( ".$gemeinde.") ";147 $sql.="AND k.gemeinde in ('".str_replace(",", "','", $gemeinde)."') "; 140 148 break; 141 149 } 142 150 $sql.="ORDER BY k.lage, k.bezeichnung LIMIT $2 ;"; 151 143 152 $v=array($match,$linelimit); 144 153 $res=pg_prepare("", $sql); 145 154 $res=pg_execute("", $v); 146 if (!$res) {return "\n<p class='err'>Fehler bei Schlüssel</p>";} 155 if (!$res) { 156 echo "\n<p class='err'>Fehler bei Schlüssel</p>"; 157 return; 158 } 147 159 $cnt = 0; 148 160 while($row = pg_fetch_array($res)) { … … 173 185 echo "</div>"; 174 186 // function ende 187 175 188 $cnt++; 176 189 } … … 196 209 $sql.="JOIN ax_gemeinde g ON k.land=g.land AND k.regierungsbezirk=g.regierungsbezirk AND k.kreis=g.kreis AND k.gemeinde=g.gemeinde "; 197 210 $sql.="WHERE k.schluesselgesamt = $1 LIMIT 1"; 211 198 212 $v=array($str_schl); // Schluessel-Gesamt .. 199 213 $res=pg_prepare("", $sql); 200 214 $res=pg_execute("", $v); 215 if (!$res) { 216 echo "\n<p class='err'>Fehler bei Name zum Straßenschlüssel</p>"; 217 if ($debug > 2) {echo "<p class='dbg'>SQL = '".$sql."'<p>";} 218 return; 219 } 220 201 221 if($row = pg_fetch_array($res)) { // .. gefunden 202 222 $kgml=$row["kgml"]; // ID aus Katalog … … 220 240 } 221 241 $sqlko.="FROM ax_lagebezeichnungohnehausnummer o "; 222 $sqlko.="JOIN alkis_beziehungen v ON o.gml_id=v.beziehung_zu "; 223 $sqlko.="JOIN ax_flurstueck f ON v.beziehung_von=f.gml_id "; 242 $sqlko.="JOIN ax_flurstueck f ON o.gml_id = ANY(f.zeigtauf) "; 224 243 $sqlko.="WHERE o.land= $1 AND o.regierungsbezirk= $2 AND o.kreis= $3 AND o.gemeinde= $4 AND o.lage= $5 "; 225 $sqlko.=" AND v.beziehungsart='zeigtAuf'LIMIT 1;"; // die erstbeste Koordinate244 $sqlko.="LIMIT 1;"; // die erstbeste Koordinate 226 245 $v=array($land,$regb,$kreis,$gemnd,$nr); 227 246 $resko=pg_prepare("", $sqlko); … … 277 296 $sql.="avg (st_y(st_transform(p.wkb_geometry,".$epsg."))) AS y "; 278 297 } 279 $sql.="FROM ap_pto p JOIN alkis_beziehungen v ON p.gml_id = v.beziehung_von "; 280 $sql.="JOIN ax_lagebezeichnungmithausnummer h ON v.beziehung_zu = h.gml_id "; 281 $sql.="WHERE v.beziehungsart='dientZurDarstellungVon' AND p.art = 'HNR' "; 282 $sql.="AND h.land= $1 AND h.regierungsbezirk= $2 AND h.kreis= $3 AND h.gemeinde= $4 AND h.lage= $5 "; 298 $sql.="FROM ap_pto p JOIN ax_lagebezeichnungmithausnummer h ON h.gml_id = ANY(p.dientzurdarstellungvon) "; 299 $sql.="WHERE p.art = 'HNR' AND h.land= $1 AND h.regierungsbezirk= $2 AND h.kreis= $3 AND h.gemeinde= $4 AND h.lage= $5 "; 283 300 $sql.="GROUP BY lpad(split_part(hausnummer,' ',1), 4, '0'), split_part(hausnummer,' ',2) "; 284 301 $sql.="ORDER BY lpad(split_part(hausnummer,' ',1), 4, '0'), split_part(hausnummer,' ',2);"; … … 293 310 $resh=pg_prepare("", $sql); 294 311 $resh=pg_execute("", $v); 295 #echo "<p class='dbg'>SQL='".$sql."'<br>Array=".$v[]."</p>"; // TEST 312 if (!$resh) { 313 echo "\n<p class='err'>Fehler bei Häuser zum Straßenschlüssel</p>"; 314 if ($debug > 2) {echo "<p class='dbg'>SQL='".$sql."'<br>Array=".$v."</p>";} 315 return; 316 } 296 317 297 318 $cnt=0; … … 347 368 348 369 // +++ Zerlegung Eingabe aus "Balken" von Buchauskunft "Lage": 349 // 370 // Numerisch: Gem-Str-Haus-lfd 350 371 351 372 if ($str_schl != "") { // aus Link
Note: See TracChangeset
for help on using the changeset viewer.