fhiiqm/gefahr_ap_search.php
changeset 1 6288d5685bff
child 11 245f994f8fa0
equal deleted inserted replaced
0:ef68113ff309 1:6288d5685bff
       
     1 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
       
     2 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
       
     3 
       
     4 <head>
       
     5 	<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
       
     6    	<link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS"  media="screen"/> 
       
     7    	<link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS"  media="print"/> 
       
     8 	<title>Arbeitssicherheit</title>
       
     9 </head>
       
    10 
       
    11 <body >
       
    12     <div class="float-r"><img src="img/fire.png" border="0" alt="Gefahr" title="Gefahr"/></div>
       
    13 
       
    14 <?php
       
    15 
       
    16 /**
       
    17  * @author Bettina Schwarzer, Fritz-Haber-Institut
       
    18  * @copyright 08/2011
       
    19  * 
       
    20  * Arbeitsicherheit
       
    21  */
       
    22 
       
    23     error_reporting(E_ALL ^ E_NOTICE);
       
    24     
       
    25     $query = $_POST["query"]; // alle Filterfelder
       
    26     
       
    27     $zeil = $_GET["z"];
       
    28     if (!$zeil) $zeil = 25; // Anzahl der gezeigten Zeilen
       
    29     $start = $_GET["st"];   // Start bei DS $start+1
       
    30     if (!$start) $start=0;
       
    31     
       
    32     $rag    = $_POST["rag"];    // Parameter aus Form
       
    33     $search = $_POST["search"];
       
    34     if (!$search) $search =  $_GET["s"];
       
    35 
       
    36     if (!is_array($rag))
       
    37     {
       
    38         $rag["geb"]     = $_GET["g"];
       
    39         $rag["rnum"]    = $_GET["r"];
       
    40         $rag["aptyp"]   = $_GET["a"];
       
    41         $rag["gef"]     = $_GET["f"];
       
    42         $rag["bind"]    = $_GET["b"];
       
    43         $rag["sort1"]   = $_GET["s1"];
       
    44         $rag["sort2"]   = $_GET["s2"];
       
    45         $rag["sort3"]   = $_GET["s3"];
       
    46         $rag["sort4"]   = $_GET["s4"];
       
    47     }
       
    48     $_GET["g"] = $rag["geb"];
       
    49     $_GET["r"] = $rag["rnum"];
       
    50     $_GET["a"] = $rag["aptyp"];
       
    51     $_GET["f"] = $rag["gef"];
       
    52     $_GET["b"] = $rag["bind"];
       
    53     $_GET["s1"] = $rag["sort1"];
       
    54     $_GET["s2"] = $rag["sort2"];
       
    55     $_GET["s3"] = $rag["sort3"];
       
    56     $_GET["s4"] = $rag["sort4"];
       
    57    
       
    58     echo "<div align='center'>\n";
       
    59     echo "<p><b>Recherche Gefahren am Arbeitsplatz</b></p>\n";
       
    60     echo "</div>\n";
       
    61     
       
    62     if (!$search)
       
    63     {
       
    64         include ("form/gefahr_ap_search_form.inc.php");
       
    65     }
       
    66     else
       
    67     {
       
    68         echo "<div align='center'>\n";
       
    69 
       
    70     	include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
       
    71         include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
       
    72     
       
    73     	$dbc = new dbconnection();
       
    74     
       
    75         $sql = "SELECT geb_ID, raum_nr, raum_name, r.raumtyp_ID, raumtyp_bez, r.arbplatz_typ, arbplatz_typ_bez, a.gefahr_ID, gefahr_bez, raum_ID 
       
    76                 FROM fhiiqm.Gefahr_Arbplatz a INNER JOIN fhiiqm.Gefahr g ON a.gefahr_ID=g.gefahr_ID
       
    77                 RIGHT OUTER JOIN fhiiqm.Raum r ON a.arbplatz_typ=r.arbplatz_typ
       
    78                 LEFT OUTER JOIN fhiiqm.Arbplatz_Typ at ON r.arbplatz_typ=at.arbplatz_typ
       
    79                 LEFT OUTER JOIN fhiiqm.Raum_Typ rt ON r.raumtyp_ID=rt.raumtyp_ID";
       
    80         $lim = " LIMIT $start,$zeil";
       
    81         
       
    82         if (!$rag["bind"]) $bind = " AND "; else $bind = $rag["bind"];
       
    83         
       
    84         if ($rag["geb"]> -1) $where = " geb_ID = '$rag[geb]' ";
       
    85         if ($rag["rnum"]> -1) 
       
    86             if ($where) $where .= "$bind raum_ID = '$rag[rnum]' "; else $where = " raum_ID = '$rag[rnum]' ";
       
    87         if ($rag["aptyp"]> -1) 
       
    88             if ($where) $where .= "$bind r.arbplatz_typ = '$rag[aptyp]' "; else $where = " r.arbplatz_typ = '$rag[aptyp]' ";
       
    89         if ($rag["gef"]> -1) 
       
    90             if ($where) $where .= "$bind a.gefahr_ID = '$rag[gef]' "; else $where = " a.gefahr_ID = '$rag[gef]' ";
       
    91         if ($where) $where = " WHERE $where";
       
    92         
       
    93         if ($rag["sort1"]>0 || $rag["sort2"]>0 || $rag["sort3"]>0 || $rag["sort4"]>0)
       
    94         {
       
    95             if ($rag["sort1"]>0) $ord  = " ORDER BY " . $rag["sort1"];
       
    96             if ($rag["sort2"]>0) $ord .= ",".$rag["sort2"];
       
    97             if ($rag["sort3"]>0) $ord .= ",".$rag["sort3"];
       
    98             if ($rag["sort4"]>0) $ord .= ",".$rag["sort4"];
       
    99         }
       
   100         
       
   101         $sql .= $where . $ord . $lim;
       
   102 //        echo "sql = $sql<br />\n";
       
   103         $result = $dbc ->queryObjectArray($sql);
       
   104         
       
   105         if ($rag["geb"] > -1) $krit = " [Geb&auml;ude = '" . $rag["geb"] ."']";
       
   106         if ($rag["rnum"] > -1)
       
   107         { 
       
   108             if ($krit) $bd = " ".$bind; else $bd = "";
       
   109             $krit .= $bd." [Raum-Nr. = '" . $rag["rnum"] ."']";
       
   110         }   
       
   111         if ($rag["aptyp"] > -1)
       
   112         { 
       
   113             if ($krit) $bd = " ".$bind; else $bd = "";
       
   114             $krit .= $bd." [Arb.Platz-Typ = '" . $rag["aptyp"] ."']";
       
   115         }
       
   116         if ($rag["gef"] > -1)
       
   117         { 
       
   118             if ($krit) $bd = " ".$bind; else $bd = "";
       
   119             $krit .= $bd." [Gefahr = '" . $rag["gef"] ."']";
       
   120         }    
       
   121         if ($krit )echo "Suchergebnis f&uuml;r $krit"; else echo "Suchergebnis";
       
   122 
       
   123         if ($result)
       
   124         {
       
   125     		$bg1 = "#F8F8F8";
       
   126     		$bg2 = "#DEDFE1";
       
   127     		$bg = "#FFFFFF";
       
   128             $sqlc = "SELECT COUNT(*) 
       
   129                         FROM fhiiqm.Gefahr_Arbplatz a INNER JOIN fhiiqm.Gefahr g ON a.gefahr_ID=g.gefahr_ID
       
   130                         RIGHT OUTER JOIN fhiiqm.Raum r ON a.arbplatz_typ=r.arbplatz_typ
       
   131                         LEFT OUTER JOIN fhiiqm.Arbplatz_Typ at ON r.arbplatz_typ=at.arbplatz_typ
       
   132                         LEFT OUTER JOIN fhiiqm.Raum_Typ rt ON r.raumtyp_ID=rt.raumtyp_ID $where";
       
   133             $ianz = $dbc -> querySingleItem($sqlc);
       
   134             //$ianz = $dbc -> numrows($sql);
       
   135             printf ("<p>Anzahl gefundener Datensätze: %s</p>", $ianz);
       
   136             
       
   137             echo "<table border='0'>\n";
       
   138             // Listenkopf
       
   139             echo "<tr bgcolor='#68ACBF'>";
       
   140             echo "<th>Geb&auml;ude</th>";
       
   141             echo "<th>Raum-Nr.</th>";
       
   142             echo "<th>Raum-Bez.</th>";
       
   143             echo "<th>Arb.-Platz-Typ</th>";
       
   144             echo "<th>Gefahr</th></tr>";
       
   145 
       
   146             
       
   147             foreach ($result as $row)
       
   148             {
       
   149                 if ($rid != $row->raum_ID)
       
   150                 {
       
   151         			if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
       
   152                     echo "<tr bgcolor='" . $bg . "'>"; 
       
   153                     echo "<td>$row->geb_ID</td>";
       
   154                     echo "<td>$row->raum_nr</td>";
       
   155                     echo "<td>$row->raum_name</td>";
       
   156                     echo "<td>$row->arbplatz_typ</td>";
       
   157                 }
       
   158                 else
       
   159                 {
       
   160                     echo "<tr bgcolor='" . $bg . "'>"; 
       
   161                     echo "<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td>"; 
       
   162                 }    
       
   163                 echo "<td>$row->gefahr_ID - $row->gefahr_bez</td></tr>\n";
       
   164                 $rid = $row->raum_ID;
       
   165             }   
       
   166             echo "</table>\n";
       
   167             echo "</div>\n";
       
   168             
       
   169             echo "<br />&nbsp;&nbsp;&nbsp;";
       
   170             // Parameter aus $_GET fuer weitere Seiten
       
   171             $_GET["s"] = 1; // bewirkt weitere Suche
       
   172             foreach ($_GET as $key=>$val)
       
   173             {
       
   174                 if ($key != "st") $liste .= "&" . $key ."=".$val;
       
   175             }    
       
   176             // Links auf andere Seiten generieren
       
   177             liste_links($start,$zeil,$ianz,$liste);
       
   178         }
       
   179         else
       
   180         {
       
   181             echo "<p class='red'>&nbsp;&nbsp;&nbsp;Leider gibt es kein Ergebnis für die von Ihnen gewählten Kriterien!</p>";
       
   182             echo "</div>\n";
       
   183         }
       
   184         echo "<br /><br />&nbsp;&nbsp;&nbsp;<a href=\"" . $_SERVER["PHP_SELF"] . "\" target=\"_self\" title=\"Gefahren\" class=\"sc\">neue Suche</a></p>\n";
       
   185     }
       
   186 
       
   187 ?>
       
   188 
       
   189 </body>
       
   190 </html>