fhiiqm/gefahr_ap_search.php
changeset 1 6288d5685bff
child 11 245f994f8fa0
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/fhiiqm/gefahr_ap_search.php	Wed Aug 31 14:22:19 2011 +0200
@@ -0,0 +1,190 @@
+<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
+
+<head>
+	<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
+   	<link href="css/db.css" rel="STYLESHEET" type="TEXT/CSS"  media="screen"/> 
+   	<link href="css/db_print.css" rel="STYLESHEET" type="TEXT/CSS"  media="print"/> 
+	<title>Arbeitssicherheit</title>
+</head>
+
+<body >
+    <div class="float-r"><img src="img/fire.png" border="0" alt="Gefahr" title="Gefahr"/></div>
+
+<?php
+
+/**
+ * @author Bettina Schwarzer, Fritz-Haber-Institut
+ * @copyright 08/2011
+ * 
+ * Arbeitsicherheit
+ */
+
+    error_reporting(E_ALL ^ E_NOTICE);
+    
+    $query = $_POST["query"]; // alle Filterfelder
+    
+    $zeil = $_GET["z"];
+    if (!$zeil) $zeil = 25; // Anzahl der gezeigten Zeilen
+    $start = $_GET["st"];   // Start bei DS $start+1
+    if (!$start) $start=0;
+    
+    $rag    = $_POST["rag"];    // Parameter aus Form
+    $search = $_POST["search"];
+    if (!$search) $search =  $_GET["s"];
+
+    if (!is_array($rag))
+    {
+        $rag["geb"]     = $_GET["g"];
+        $rag["rnum"]    = $_GET["r"];
+        $rag["aptyp"]   = $_GET["a"];
+        $rag["gef"]     = $_GET["f"];
+        $rag["bind"]    = $_GET["b"];
+        $rag["sort1"]   = $_GET["s1"];
+        $rag["sort2"]   = $_GET["s2"];
+        $rag["sort3"]   = $_GET["s3"];
+        $rag["sort4"]   = $_GET["s4"];
+    }
+    $_GET["g"] = $rag["geb"];
+    $_GET["r"] = $rag["rnum"];
+    $_GET["a"] = $rag["aptyp"];
+    $_GET["f"] = $rag["gef"];
+    $_GET["b"] = $rag["bind"];
+    $_GET["s1"] = $rag["sort1"];
+    $_GET["s2"] = $rag["sort2"];
+    $_GET["s3"] = $rag["sort3"];
+    $_GET["s4"] = $rag["sort4"];
+   
+    echo "<div align='center'>\n";
+    echo "<p><b>Recherche Gefahren am Arbeitsplatz</b></p>\n";
+    echo "</div>\n";
+    
+    if (!$search)
+    {
+        include ("form/gefahr_ap_search_form.inc.php");
+    }
+    else
+    {
+        echo "<div align='center'>\n";
+
+    	include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
+        include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/func_lib.inc.php");
+    
+    	$dbc = new dbconnection();
+    
+        $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 
+                FROM fhiiqm.Gefahr_Arbplatz a INNER JOIN fhiiqm.Gefahr g ON a.gefahr_ID=g.gefahr_ID
+                RIGHT OUTER JOIN fhiiqm.Raum r ON a.arbplatz_typ=r.arbplatz_typ
+                LEFT OUTER JOIN fhiiqm.Arbplatz_Typ at ON r.arbplatz_typ=at.arbplatz_typ
+                LEFT OUTER JOIN fhiiqm.Raum_Typ rt ON r.raumtyp_ID=rt.raumtyp_ID";
+        $lim = " LIMIT $start,$zeil";
+        
+        if (!$rag["bind"]) $bind = " AND "; else $bind = $rag["bind"];
+        
+        if ($rag["geb"]> -1) $where = " geb_ID = '$rag[geb]' ";
+        if ($rag["rnum"]> -1) 
+            if ($where) $where .= "$bind raum_ID = '$rag[rnum]' "; else $where = " raum_ID = '$rag[rnum]' ";
+        if ($rag["aptyp"]> -1) 
+            if ($where) $where .= "$bind r.arbplatz_typ = '$rag[aptyp]' "; else $where = " r.arbplatz_typ = '$rag[aptyp]' ";
+        if ($rag["gef"]> -1) 
+            if ($where) $where .= "$bind a.gefahr_ID = '$rag[gef]' "; else $where = " a.gefahr_ID = '$rag[gef]' ";
+        if ($where) $where = " WHERE $where";
+        
+        if ($rag["sort1"]>0 || $rag["sort2"]>0 || $rag["sort3"]>0 || $rag["sort4"]>0)
+        {
+            if ($rag["sort1"]>0) $ord  = " ORDER BY " . $rag["sort1"];
+            if ($rag["sort2"]>0) $ord .= ",".$rag["sort2"];
+            if ($rag["sort3"]>0) $ord .= ",".$rag["sort3"];
+            if ($rag["sort4"]>0) $ord .= ",".$rag["sort4"];
+        }
+        
+        $sql .= $where . $ord . $lim;
+//        echo "sql = $sql<br />\n";
+        $result = $dbc ->queryObjectArray($sql);
+        
+        if ($rag["geb"] > -1) $krit = " [Geb&auml;ude = '" . $rag["geb"] ."']";
+        if ($rag["rnum"] > -1)
+        { 
+            if ($krit) $bd = " ".$bind; else $bd = "";
+            $krit .= $bd." [Raum-Nr. = '" . $rag["rnum"] ."']";
+        }   
+        if ($rag["aptyp"] > -1)
+        { 
+            if ($krit) $bd = " ".$bind; else $bd = "";
+            $krit .= $bd." [Arb.Platz-Typ = '" . $rag["aptyp"] ."']";
+        }
+        if ($rag["gef"] > -1)
+        { 
+            if ($krit) $bd = " ".$bind; else $bd = "";
+            $krit .= $bd." [Gefahr = '" . $rag["gef"] ."']";
+        }    
+        if ($krit )echo "Suchergebnis f&uuml;r $krit"; else echo "Suchergebnis";
+
+        if ($result)
+        {
+    		$bg1 = "#F8F8F8";
+    		$bg2 = "#DEDFE1";
+    		$bg = "#FFFFFF";
+            $sqlc = "SELECT COUNT(*) 
+                        FROM fhiiqm.Gefahr_Arbplatz a INNER JOIN fhiiqm.Gefahr g ON a.gefahr_ID=g.gefahr_ID
+                        RIGHT OUTER JOIN fhiiqm.Raum r ON a.arbplatz_typ=r.arbplatz_typ
+                        LEFT OUTER JOIN fhiiqm.Arbplatz_Typ at ON r.arbplatz_typ=at.arbplatz_typ
+                        LEFT OUTER JOIN fhiiqm.Raum_Typ rt ON r.raumtyp_ID=rt.raumtyp_ID $where";
+            $ianz = $dbc -> querySingleItem($sqlc);
+            //$ianz = $dbc -> numrows($sql);
+            printf ("<p>Anzahl gefundener Datensätze: %s</p>", $ianz);
+            
+            echo "<table border='0'>\n";
+            // Listenkopf
+            echo "<tr bgcolor='#68ACBF'>";
+            echo "<th>Geb&auml;ude</th>";
+            echo "<th>Raum-Nr.</th>";
+            echo "<th>Raum-Bez.</th>";
+            echo "<th>Arb.-Platz-Typ</th>";
+            echo "<th>Gefahr</th></tr>";
+
+            
+            foreach ($result as $row)
+            {
+                if ($rid != $row->raum_ID)
+                {
+        			if ($bg == $bg1) $bg = $bg2; else $bg = $bg1;
+                    echo "<tr bgcolor='" . $bg . "'>"; 
+                    echo "<td>$row->geb_ID</td>";
+                    echo "<td>$row->raum_nr</td>";
+                    echo "<td>$row->raum_name</td>";
+                    echo "<td>$row->arbplatz_typ</td>";
+                }
+                else
+                {
+                    echo "<tr bgcolor='" . $bg . "'>"; 
+                    echo "<td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td><td>&nbsp;</td>"; 
+                }    
+                echo "<td>$row->gefahr_ID - $row->gefahr_bez</td></tr>\n";
+                $rid = $row->raum_ID;
+            }   
+            echo "</table>\n";
+            echo "</div>\n";
+            
+            echo "<br />&nbsp;&nbsp;&nbsp;";
+            // Parameter aus $_GET fuer weitere Seiten
+            $_GET["s"] = 1; // bewirkt weitere Suche
+            foreach ($_GET as $key=>$val)
+            {
+                if ($key != "st") $liste .= "&" . $key ."=".$val;
+            }    
+            // Links auf andere Seiten generieren
+            liste_links($start,$zeil,$ianz,$liste);
+        }
+        else
+        {
+            echo "<p class='red'>&nbsp;&nbsp;&nbsp;Leider gibt es kein Ergebnis für die von Ihnen gewählten Kriterien!</p>";
+            echo "</div>\n";
+        }
+        echo "<br /><br />&nbsp;&nbsp;&nbsp;<a href=\"" . $_SERVER["PHP_SELF"] . "\" target=\"_self\" title=\"Gefahren\" class=\"sc\">neue Suche</a></p>\n";
+    }
+
+?>
+
+</body>
+</html>
\ No newline at end of file