Ignore:
Timestamp:
12/10/15 17:35:32 (8 years ago)
Author:
frank.jaeger
Message:

ALKIS-Mapbender-Navigation umgestellt von .ico- auf .png-Grafiken.
Weitere kleine Korrekturen an ALKIS-Mapbender-Navigation.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/mapbender/http/nav/alkisnav_fls.php

    r348 r356  
    66                                ZurÃŒck-Link, Titel der Transaktion anzeigen 
    77        2013-04-29      Test mit IE 
    8         2013-05-07  Strukturierung des Programms, redundanten Code in Functions zusammen fassen 
    9         2013-05-14  Variablen-Namen geordnet, Hervorhebung aktuelles Objekt, Title auch auf Icon, IE zeigt sonst alt= als Title dar. 
    10         2013-10-15  missing Parameter 
    11         2014-09-03  PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 
    12         2014-09-15  Bei Relationen den Timestamp abschneiden, mehr "endet IS NULL" 
    13         2014-12-11  Fehlerbehandlung bei Eingabe ungÃŒltiger Gemarkungsnummer. Tabellen pp_gemarkung und pp_flur verwenden. 
     8        2013-05-07      Strukturierung des Programms, redundanten Code in Functions zusammen fassen 
     9        2013-05-14      Variablen-Namen geordnet, Hervorhebung aktuelles Objekt, Title auch auf Icon, IE zeigt sonst alt= als Title dar. 
     10        2013-10-15      missing Parameter 
     11        2014-09-03      PostNAS 0.8: ohne Tab. "alkis_beziehungen", mehr "endet IS NULL", Spalten varchar statt integer 
     12        2014-09-15      Bei Relationen den Timestamp abschneiden, mehr "endet IS NULL" 
     13        2014-12-11      Fehlerbehandlung bei Eingabe ungÃŒltiger Gemarkungsnummer. Tabellen pp_gemarkung und pp_flur verwenden. 
     14        2015-06-11      EineFlur, Limit fÃŒr Flurstuecke von 600 auf 900 erhoeht 
     15        2015-12-10      Umstellen .ico auf .png, 
     16                                Vermeidung nicht initialisierter Variable. Somit ausfÃŒhrbar mit php.ini-Einstellungen: 
     17                                - error_reporting = E_ALL | E_STRICT 
     18                                - display_errors = on 
     19                                .. ohne störende Meldungen. 
    1420*/ 
     21 
     22// Variable initialisieren 
     23$hist="n"; 
     24$gm=""; 
     25 
    1526$cntget = extract($_GET); 
    1627include("../../conf/alkisnav_conf.php"); 
     
    1829$con_string = "host=".$host." port=".$port." dbname=".$dbname.$dbvers.$gkz." user=".$user." password=".$password; 
    1930$con = pg_connect ($con_string) or die ("Fehler bei der Verbindung zur Datenbank ".$dbname.$dbvers.$gkz); 
     31 
    2032echo <<<END 
    2133<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> 
     
    4052<body> 
    4153<a href='javascript:history.back()'> 
    42         <img src="ico/zurueck.ico" width="16" height="16" alt="&lt;&lt;" title="zur&uuml;ck"> 
    43 </a> 
    44 <dfn class='title' id='transaktiontitle'></dfn> 
     54        <img src="ico/zurueck.png" width="16" height="16" alt="&lt;&lt;" title="zur&uuml;ck"> 
     55</a>&nbsp; 
     56<span title='zuletzt ausgef&uuml;hrte Aktion'> 
     57        <dfn class='title' id='transaktiontitle'></dfn> 
     58</span> 
    4559 
    4660END; 
     
    7185        $arr = explode("-", $fskennz, 4); // an den Trenn-Strichen aufteilen 
    7286        $zgemkg=trim($arr[0]); 
    73         $zflur=h_hinten($arr[1]); 
    74         $zfsnr=trim($arr[2]); 
     87        if (count($arr) > 1) { 
     88                $zflur=h_hinten($arr[1]); 
     89                if (count($arr) > 2) { 
     90                        $zfsnr=trim($arr[2]); 
     91                } else { 
     92                        $zfsnr=""; 
     93                } 
     94        } else { 
     95                $zflur=""; 
     96                $zfsnr=""; 
     97        } 
    7598        if ($debug > 1) {echo "<p class='dbg'>Gemkg: '".$zgemkg."' Flur: '".$zflur."' NR: '".$zfsnr."'</p>";} 
    76          
    7799        if ($zgemkg == "") { 
    78100                return 0; // Gemeinden oder Gemarkungen listen 
     
    89111                $zn=explode("/", $zfsnr, 2); 
    90112                $zzaehler=h_hinten(trim($zn[0])); 
    91                 $znenner =h_hinten(trim($zn[1])); 
     113                if (count($zn) > 1) {$znenner=h_hinten(trim($zn[1]));} else {$znenner="";} 
    92114                if ( ! is_ne_zahl($zzaehler)) { 
    93115                        echo "<p class='err'>FlurstÃŒcksnummer '".$zzaehler."' ist nicht numerisch</p>"; 
     
    111133        $sqlk ="SELECT "; 
    112134        if($epsg == "25832") { // Transform nicht notwendig 
    113                 $sqlk.="x(st_Centroid(wkb_geometry)) AS x, "; 
    114                 $sqlk.="y(st_Centroid(wkb_geometry)) AS y "; 
     135                $sqlk.="st_x(st_Centroid(wkb_geometry)) AS x, "; 
     136                $sqlk.="st_y(st_Centroid(wkb_geometry)) AS y "; 
    115137        } else {   
    116                 $sqlk.="x(st_transform(st_Centroid(wkb_geometry), ".$epsg.")) AS x, "; 
    117                 $sqlk.="y(st_transform(st_Centroid(wkb_geometry), ".$epsg.")) AS y ";                    
     138                $sqlk.="st_x(st_transform(st_Centroid(wkb_geometry), ".$epsg.")) AS x, "; 
     139                $sqlk.="st_y(st_transform(st_Centroid(wkb_geometry), ".$epsg.")) AS y ";                         
    118140        } 
    119141        $sqlk.="FROM ax_flurstueck WHERE gml_id= $1 AND endet IS NULL;"; 
     
    143165        if ($gkgname == "") {$gkgname = "(unbekannt)";} 
    144166        $gnam=htmlentities($gkgname, ENT_QUOTES, "UTF-8"); 
    145         if ($aktuell) {$cls=" aktuell";} 
     167        if ($aktuell) {$cls=" aktuell";} else {$cls="";} 
    146168 
    147169        echo "\n<div class='gk".$cls."' title='Gemarkung'>"; 
    148         echo "\n\t\t<img class='nwlink' src='ico/Gemarkung.ico' width='16' height='16' alt='GKG' title='Gemarkung'>"; 
     170        echo "\n\t\t<img class='nwlink' src='ico/Gemarkung.png' width='16' height='16' alt='GKG' title='Gemarkung'>"; 
    149171        echo " OT <a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;fskennz=".$gkgnr."'>";             
    150172        echo  " ".$gnam."</a> (".$gkgnr.")"; 
     
    155177function zeile_flur($gkgnr, $flurnr, $histlnk, $aktuell) { // Eine Zeile zur Flur ausgeben 
    156178        global $gkz, $gemeinde, $epsg; 
    157         if ($aktuell) {$cls=" aktuell";} 
     179        if ($aktuell) {$cls=" aktuell";} else {$cls="";} 
    158180        echo "\n<div class='fl".$cls."' title='Flur'>"; 
    159         echo "\n\t\t<img class='nwlink' src='ico/Flur.ico' width='16' height='16' alt='FL' title='Flur'> "; 
     181        echo "\n\t\t<img class='nwlink' src='ico/Flur.png' width='16' height='16' alt='FL' title='Flur'> "; 
    160182        $url=$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;fskennz=".$gkgnr."-".$flurnr; 
    161183        echo "<a title='Aktuelle Flurst&uuml;cke suchen' href='".$url."'>Flur ".$flurnr." </a>";  
    162         if ($histlnk) { // Link zur hist. Suche anbieten 
    163                 echo " <a class='hislnk' title='Historische Flurst&uuml;cke der Flur' href='".$url."&amp;hist=j'>Hist.</a>"; 
     184        if ($histlnk) { // Link zur Historie-Suche anbieten 
     185                echo " <a class='hislnk' title='Historische Flurst&uuml;cke der Flur suchen' href='".$url."&amp;hist=j'>Hist.</a>"; 
    164186        } 
    165187        echo "\n</div>";         
     
    171193        global $gkz, $gemeinde, $epsg, $auskpath; 
    172194        if ($ftyp == "h") { 
    173                 $ico="Flurstueck_Historisch_Lnk.ico"; 
     195                $ico="Flurstueck_Historisch_Lnk.png"; 
    174196                $titl="Historisches Flurst&uuml;ck"; 
    175197        } else { 
    176                 $ico="Flurstueck_Historisch_oR_Lnk.ico"; 
     198                $ico="Flurstueck_Historisch_oR_Lnk.png"; 
    177199                $titl="Historisches Flurst&uuml;ck ohne Raumbezug"; 
    178200        } 
    179         if ($aktuell) {$cls=" aktuell";} 
     201        if ($aktuell) {$cls=" aktuell";} else {$cls="";} 
    180202        echo "\n<div class='hi".$cls."' title='".$titl."'>"; 
    181203 
     
    205227                break; 
    206228        case "h": 
    207                 $ico="Flurstueck_Historisch_Lnk.ico"; 
     229                $ico="Flurstueck_Historisch_Lnk.png"; 
    208230                $titl="Historisches Flurst&uuml;ck"; 
    209231                $hisparm="&amp;hist=j"; 
     
    211233                break; 
    212234        case "o": 
    213                 $ico="Flurstueck_Historisch_oR_Lnk.ico"; 
     235                $ico="Flurstueck_Historisch_oR_Lnk.png"; 
    214236                $titl="Historisches Flurst&uuml;ck ohne Raumbezug"; 
    215237                $hisparm="&amp;hist=j"; 
     
    379401    } else { 
    380402                echo "\n<div class='gk' title='Gemarkung'>"; 
    381                 echo "\n\t\t<img class='nwlink' src='ico/Gemarkung.ico' width='16' height='16' alt='GKG' title='Gemarkung'>"; 
     403                echo "\n\t\t<img class='nwlink' src='ico/Gemarkung.png' width='16' height='16' alt='GKG' title='Gemarkung'>"; 
    382404                echo " Gemarkung ".$gkgnr." nicht gefunden!\n</div>"; 
    383405                return false; 
     
    427449        // Kennzeichen aus Gemarkung und FlurNr wurde eingegeben, dazu aktuelle FlurstÃŒcke suchen 
    428450        global $con, $gkz, $gemeinde, $epsg, $debug, $zgemkg, $zflur; 
    429         $linelimit=600; // Wie groß kann eine Flur sein? 
     451        $linelimit=900; // Wie groß kann eine Flur sein? 
    430452 
    431453        // Head 
     
    486508 
    487509        // Body 
    488         $whcl.="WHERE flurstueckskennzeichen like $1 AND endet IS NULL "; 
     510        $whcl="WHERE flurstueckskennzeichen like $1 AND endet IS NULL "; 
    489511        $sql ="SELECT 'h' AS ftyp, gml_id, zaehler, nenner, nachfolgerflurstueckskennzeichen as nachf FROM ax_historischesflurstueck ".$whcl; 
    490512        $sql.="UNION SELECT 'o' AS ftyp, gml_id, zaehler, nenner, nachfolgerflurstueckskennzeichen as nachf FROM ax_historischesflurstueckohneraumbezug ".$whcl; 
    491513        $sql.="ORDER BY zaehler, nenner LIMIT $2 ;";  
    492         $fskzwhere =$land.$zgemkg.str_pad($zflur, 3, "0", $STR_PAD_LEFT)."%"; 
     514        $fskzwhere =$land.$zgemkg.str_pad($zflur, 3, "0", STR_PAD_LEFT)."%"; 
    493515        $v=array($fskzwhere, $linelimit); 
    494516        $res=pg_prepare("", $sql); 
     
    532554        $sql ="SELECT f.gml_id, f.flurnummer, f.zaehler, f.nenner, "; 
    533555        if($epsg == "25832") { // Transform nicht notwendig 
    534                 $sql.="x(st_Centroid(f.wkb_geometry)) AS x, "; 
    535                 $sql.="y(st_Centroid(f.wkb_geometry)) AS y "; 
     556                $sql.="st_x(st_Centroid(f.wkb_geometry)) AS x, "; 
     557                $sql.="st_y(st_Centroid(f.wkb_geometry)) AS y "; 
    536558        } else {   
    537                 $sql.="x(st_transform(st_Centroid(f.wkb_geometry), ".$epsg.")) AS x, "; 
    538                 $sql.="y(st_transform(st_Centroid(f.wkb_geometry), ".$epsg.")) AS y ";                   
     559                $sql.="st_x(st_transform(st_Centroid(f.wkb_geometry), ".$epsg.")) AS x, "; 
     560                $sql.="st_y(st_transform(st_Centroid(f.wkb_geometry), ".$epsg.")) AS y ";                        
    539561        } 
    540562        $sql.="FROM ax_flurstueck f WHERE f.gemarkungsnummer= $1 AND f.flurnummer= $2 AND f.zaehler= $3 "; 
     
    558580                echo "\n<p class='anz'>Kein aktuelles Flurst&uuml;ck.</p>"; 
    559581                echo "\n<div class='hi' title='in Historie suchen'>"; 
    560                         echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Historisch.ico' width='16' height='16' alt='Historisches Flurst&uuml;ck'>&nbsp;"; 
     582                        echo "\n\t\t<img class='nwlink' src='ico/Flurstueck_Historisch.png' width='16' height='16' alt='Historisches Flurst&uuml;ck'>&nbsp;"; 
    561583                        echo "<a href='".$_SERVER['SCRIPT_NAME']."?gkz=".$gkz."&amp;gemeinde=".$gemeinde."&amp;epsg=".$epsg."&amp;fskennz=".$fskennz."&amp;hist=j'>"; 
    562584                        echo $zgemkg."-".$zflur."-".$zzaehler; 
     
    583605        // Suche ueber das Flurstueckskennzeichen, gml unbekannt 
    584606        $fskzwhere =$land.$zgemkg; // Flurst-Kennz. f. Where 
    585         $fskzwhere.=str_pad($zflur, 3, "0", $STR_PAD_LEFT); 
    586         $fskzwhere.=str_pad($zzaehler, 5, "0", $STR_PAD_LEFT); 
     607        $fskzwhere.=str_pad($zflur, 3, "0", STR_PAD_LEFT); 
     608        $fskzwhere.=str_pad($zzaehler, 5, "0", STR_PAD_LEFT); 
    587609        if ($znenner == "") {   // Wenn kein Nenner angegeben wurde,  
    588610                //wird mit Wildcard und like nach allen Nennern gesucht. 
     
    594616                // z.B.: like '05265600400145____\_\_' 
    595617        } else { // Ein Nenner wurde angegeben 
    596                 $fskzwhere.=str_pad($znenner, 4, "0", $STR_PAD_LEFT)."__"; 
     618                $fskzwhere.=str_pad($znenner, 4, "0", STR_PAD_LEFT)."__"; 
    597619                $whereop=" = "; 
    598620        } 
    599         $whcl.="WHERE flurstueckskennzeichen ".$whereop." $1 AND endet IS NULL "; 
     621        $whcl="WHERE flurstueckskennzeichen ".$whereop." $1 AND endet IS NULL "; 
    600622        $fldlist=" AS ftyp, gml_id, gemarkungsnummer, flurnummer, zaehler, nenner, "; 
    601623 
     
    766788} 
    767789 
    768 // Titel im Kopf anzeigen 
     790// Nach Durchlaufen des PHP-Scriptes die zuletzt ausgefÃŒhrte Transaktion  
     791// im Kopf des Ergebnisrahmens anzeigen. 
     792// Dazu die im HTML-Header definierte Javascript-Function benutzen. 
     793// Alternativ wird auch aus dem Javascript "positionieren Karte" dieser Titel gesetzt. 
    769794echo " 
    770795<script type='text/javascript'> 
Note: See TracChangeset for help on using the changeset viewer.