fhiiqm/tel_ed.php
changeset 32 c2d325791e24
child 33 f1a8785434e4
equal deleted inserted replaced
31:0a1eb975fbd9 32:c2d325791e24
       
     1 <?php
       
     2 
       
     3 /**
       
     4  * @author Bettina Schwarzer, Fritz-Haber-Institut
       
     5  * @copyright 11/2012
       
     6  * 
       
     7  * Edit Telefon
       
     8  */
       
     9 
       
    10     error_reporting(E_ALL ^ E_NOTICE);
       
    11     
       
    12     session_start();
       
    13     if (! isset($_SESSION["userid"]))
       
    14     { 
       
    15         include_once ("inc/func_lib.inc.php");	
       
    16         login($_SERVER["PHP_SELF"]);
       
    17         exit;
       
    18     }
       
    19     
       
    20     if (is_null($_SESSION["recht"]) || (!is_null($_SESSION["recht"]) && !in_array("fmr",$_SESSION["recht"]) && !in_array("fme",$_SESSION["recht"])))
       
    21     {
       
    22         header("Location: start.php");
       
    23         exit;
       
    24     }    
       
    25 
       
    26 	include_once($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/dbconnect.inc.php");
       
    27 	if (!isset($dbc) || !$dbc) $dbc = new dbconnection();
       
    28 
       
    29     $sub = $_POST["eintragen"];
       
    30     $del = $_POST["del"];
       
    31     $tf  = $_POST["tf"];
       
    32     $okn = $_POST["okn"];
       
    33     $ok  = $_POST["ok"];
       
    34     if (!$okn) $ok=0;
       
    35     $tid = urldecode($_GET["i"]); // Telefon
       
    36 
       
    37 	$sort   = $_GET["s"];   // Sortierung nach Spalte
       
    38     $dir    = $_GET["d"];   // Sortierrichtung
       
    39     $fnum   = $_GET["f"];   // Spaltennummer, nach der aktuell gefiltert wird
       
    40     $filter =  $_GET["b"];  // Filterbegriff 
       
    41     $zeil = $_GET["z"];     // Anzahl der gezeigten Zeilen
       
    42     $start = $_GET["st"];   // Start bei DS $start+1
       
    43     $getp = "s=$sort&d=$dir&f=$fnum&b=$filter&st=$start&z=$zeil"; // Parameter Listenanzeige
       
    44     
       
    45 //    print_r ($tf); echo ", i= $tid<br />sub = $sub<br /><br />"; 
       
    46 
       
    47 ?>
       
    48 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
       
    49 <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
       
    50 
       
    51 <head>
       
    52 	<meta http-equiv="content-type" content="text/html; charset=iso-8859-1" />
       
    53    	<link href="/fhiiqm/css/db.css" rel="STYLESHEET" type="TEXT/CSS" media="screen"/> 
       
    54    	<link href="/fhiiqm/css/db_print.css" rel="STYLESHEET" type="TEXT/CSS" media="print"/> 
       
    55 	<title>Telefon bearbeiten</title>
       
    56 
       
    57 </head>
       
    58 
       
    59 <body>
       
    60 
       
    61 <?php
       
    62     echo "&nbsp;";  
       
    63     echo "<div class=\"float-br smaller\" valign='top'>";
       
    64     echo "&nbsp;&nbsp;&nbsp;user: " . $_SESSION["userid"];
       
    65     echo "&nbsp;&nbsp;&nbsp;<a class='sc' href='/fhiiqm/logout.php' title='Session beenden'>logout</a></div>\n";
       
    66     echo "<div class=\"float-r\"><img src=\"img/group.png\" border=\"0\" alt=\"Mitarbeiter bearbeiten\" title=\"Mitarbeiter bearbeiten\"/></div>\n";
       
    67 
       
    68     if ($tid) $text = "editieren"; else $text = "erfassen";
       
    69     echo "<div align=\"center\">";
       
    70     echo "<h3>Telefon $text</h3>";
       
    71     echo "</div>\n";
       
    72     if ((!$sub && !$del) || !$ok) 
       
    73     {
       
    74         
       
    75         if ($tid && (!$sub || !$del) && !isset($tf))
       
    76         {
       
    77             $sql = "SELECT telefon_nr, telefon_typ, raum_ID FROM Telefon WHERE telefon_nr='$tid'";
       
    78             if ($result = $dbc -> queryObjectArray($sql))
       
    79             {
       
    80                 foreach ($result as $row)
       
    81                 {
       
    82                     $tf['tel'] = $row->telefon_nr;
       
    83                     $tf['typ'] = $row->telefon_typ;
       
    84                     $tf['raum'] = $row->raum_ID;
       
    85                 }    
       
    86             }
       
    87             // Haus
       
    88             if ($tf['raum'])
       
    89             {
       
    90                 $sql = "SELECT geb_ID FROM Raum 
       
    91                         WHERE raum_ID = " . $tf['raum']; 
       
    92                 $tf['geb'] = $dbc -> querySingleItem($sql);
       
    93             }   
       
    94         }
       
    95         $okn = true;
       
    96         if (!$tf) $tf['geb'] = 'A';
       
    97 ?>
       
    98         <div align="center">
       
    99         <h5>* - Felder sind erforderlich!</h5>
       
   100         </div>
       
   101         <form action="<?php $_SERVER['PHP_SELF'] ?>" method="post" enctype="application/x-www-form-urlencoded" name="form_ma">
       
   102         <div align="center"> 
       
   103         <table width="60%" border="0" cellspacing="3" cellpadding="3">
       
   104         	<tr>
       
   105         	   <td>Telefon *</td>
       
   106         	   <td><input name="tf[tel]" type="text" size="30" maxlength="30" value="<?php echo $tf['tel']; ?>" />
       
   107                 <?php
       
   108         			     if (isset($tf['tel']) && $tf['tel']<'!')
       
   109         				{
       
   110         					echo "<br><span class=\"red\">Telefon-Nummer ist erforderlich!</span>\n";
       
   111         					$okn = false;
       
   112         				}
       
   113                 ?>
       
   114                 </td>
       
   115             </tr>
       
   116         	<tr>
       
   117         	   <td>Telefontyp *</td>
       
   118         	   <td><select name="tf[typ]">
       
   119                 <?php
       
   120                 	$sql = "SHOW COLUMNS FROM Telefon WHERE Field = 'telefon_typ'";
       
   121                 	if ($result = $dbc->queryRow($sql))
       
   122                 	{ 
       
   123                 		foreach ($result as $row)
       
   124                 			$arr=explode("','",preg_replace("/(enum|set)\('(.+?)'\)/","\\2",$row[1]));
       
   125                 		foreach ($arr as $typ)
       
   126                 		{
       
   127                 			if ($typ == $tf["typ"])
       
   128                 				echo "<option selected value=\"$typ\">$typ</option>\n";
       
   129                 			else
       
   130                 				echo "<option value=\"$typ\">$typ</option>\n";
       
   131                 		}
       
   132                 	}
       
   133                 ?>
       
   134                     </select>
       
   135                 </td>
       
   136             </tr>
       
   137             <tr><td>Ort</td>
       
   138                 <td valign="top">Haus&nbsp;
       
   139                      <select name="tf[geb]" onchange="this.form.submit();">
       
   140                     <?php 
       
   141                         if ($tf['geb'] == -1) $select = " selected "; else $select = "";
       
   142                         echo "<option $select value=\"-1\"></option>\n";
       
   143                         $sql = "SELECT geb_ID, geb_name FROM `fhiiqm`.`Haus` ORDER BY 1";
       
   144                         if ($result = $dbc->queryObjectArray($sql))
       
   145                         {
       
   146                             foreach ($result as $row)
       
   147                             {
       
   148                                 if ($row->geb_ID == $tf['geb'])
       
   149             					   echo "<option selected value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n";
       
   150             				    else
       
   151             					   echo "<option value=\"$row->geb_ID\">$row->geb_ID: $row->geb_name</option>\n";
       
   152                             }
       
   153                     }
       
   154                     ?>
       
   155                     </select>
       
   156                     &nbsp;&nbsp;Raum&nbsp;            
       
   157                      <select name="tf[raum]">
       
   158                     <?php 
       
   159                         if ($tf['raum'] == -1) $select = " selected "; else $select = "";
       
   160                         echo "<option $select value=\"-1\"></option>\n";
       
   161                         $sql = "SELECT raum_ID, raum_nr, raum_name FROM `fhiiqm`.`Raum` WHERE geb_ID='" . $tf['geb'] ."' ORDER BY 2";
       
   162                         if ($result = $dbc->queryObjectArray($sql))
       
   163                         {
       
   164                             foreach ($result as $row)
       
   165                             {
       
   166                                 if ($row->raum_ID == $tf['raum'])
       
   167             					   echo "<option selected value=\"$row->raum_ID\">$row->raum_nr $row->raum_name</option>\n";
       
   168             				    else
       
   169             					   echo "<option value=\"$row->raum_ID\">$row->raum_nr $row->raum_name</option>\n";
       
   170                             }
       
   171                     }
       
   172                     ?>
       
   173                     </select>
       
   174                 </td>
       
   175             </tr>
       
   176                 <input type="hidden" name="okn" value="<?php echo $okn; ?>" />
       
   177 
       
   178 <?php
       
   179 	  	if ($sub || $del)
       
   180         {
       
   181 		  	if ($sub)
       
   182                 $frage = "Alle Angaben ok?";
       
   183             elseif ($del)
       
   184                 $frage = "Telefon wirklich l&ouml;schen?";
       
   185 			echo "<tr>
       
   186 			  <td class=\"red\" valign=\"top\" align=\"left\">$frage</td>
       
   187 			        <td><input type=\"checkbox\" name=\"ok\" value=\"1\"";
       
   188 			        if ($ok)  echo "checked=\"checked\""; 
       
   189 			echo " /></td>\n</tr>\n";
       
   190         }
       
   191         if (!is_null($_SESSION["recht"]) && in_array("fme",$_SESSION["recht"]))
       
   192         {
       
   193             echo "
       
   194            	<tr><td>&nbsp;</td>\n
       
   195             	<td><input  class=\"button\" type=\"submit\" name=\"eintragen\" value=\"  eintragen  \" />";
       
   196             if ($tid)
       
   197             {
       
   198                 echo "&nbsp;&nbsp;&nbsp;<input class=\"buttonr\" type=\"submit\" value=\"l&ouml;schen\" name=\"del\" title=\"delete\" />";
       
   199 //                echo "&nbsp;&nbsp;&nbsp;<input class=\"button\" type=\"submit\" value=\"duplizieren\" name=\"dup\" title=\"delete\" />";
       
   200             }    
       
   201            	echo "</td></tr>\n";
       
   202         }
       
   203         echo "</table>\n";
       
   204         echo "</div>\n";
       
   205     echo "<p class='sc'>&nbsp;&nbsp;&nbsp;<a href=\"tel_flist.php?$getp\" target=\"_self\" title=\"Telefon-Liste\">&laquo; zur Telefon-Liste</a></p>\n"; 
       
   206     echo "</form>\n";
       
   207     }
       
   208     else
       
   209     {
       
   210         echo "<div align='center'>\n";
       
   211         
       
   212         if ($del)
       
   213         {   // Telefon-Nr. auch in MA_Telefon loeschen 
       
   214             $sql = "DELETE FROM Telefon WHERE telefon_nr ='$tid'";
       
   215             $retdi = $dbc -> execute($sql);
       
   216             if ($retdi)
       
   217             {
       
   218                 echo "<p class='green'><b>DELETE: TelefonNr. '".$tf["tel"] ."' wurde erfolgreich gel&ouml;scht (auch die Mitarbeiterzuordnung).</b></p>\n";
       
   219             }                
       
   220             else
       
   221             {
       
   222                 echo "<p class='red'><b>DELETE: TelefonNr. '".$tf["tel"] ."' konnte nicht gel&ouml;scht werden!</b></p>\n";
       
   223                 echo "sql = $sql<br />";
       
   224                 echo "error DELETE: " . $dbc->error . "<br />";
       
   225             }
       
   226             include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/tel_dat_show.inc.php");
       
   227         }
       
   228         else //INSERT oder UPDATE
       
   229         {
       
   230             $stmt = $dbc -> stmtinit();
       
   231             if (is_object($stmt))
       
   232             {
       
   233                 if ($tf["raum"] == "-1") $tf["raum"] = 'NULL'; 
       
   234                 if ($tid) //UPDATE
       
   235                 {
       
   236                     $stmt -> prepare("UPDATE Telefon SET
       
   237                                         telefon_nr = ?, 
       
   238                                         telefon_typ = ?,
       
   239                                         raum_ID = ?
       
   240                                         WHERE telefon_nr = '$tid'");
       
   241                     $stmt -> bind_param('sss',$tf["tel"],$tf["typ"],$tf["raum"]);
       
   242                     $result = $stmt -> execute();
       
   243                     if ($stmt->error) echo "error UPDATE Telefon: " . $stmt->error . "<br><br>\n";
       
   244                 }
       
   245                 else
       
   246                 {
       
   247                     $stmt -> prepare("INSERT INTO Telefon (telefon_nr, telefon_typ, raum_ID) VALUES (?,?,?)");
       
   248                     $stmt -> bind_param('sss',$tf["tel"],$tf["typ"],$tf["raum"]);
       
   249                     $result = $stmt -> execute();
       
   250                     if ($stmt->error) echo "error INSERT Telefon: " . $stmt->error . "<br><br>\n";
       
   251                 }    
       
   252             }
       
   253             if ($result) // INSERT/UPDATE Telefon
       
   254             {
       
   255                 //Eingabe Daten erfolgreich 
       
   256                     echo "<p class='green'><b>Telefondaten zu '" . $tf['tel']. "' wurden erfolgreich gespeichert.</b></p>\n";
       
   257                     echo "<br /><br />\n";
       
   258             }
       
   259             else
       
   260             {
       
   261                     echo "<p class='red'><b>Telefondaten zu '" . $tf['tel']. "' wurden nicht gespeichert.</b></p>\n";
       
   262                     echo "error: ". $dbc -> error;    
       
   263                     echo "<br /><br />\n";                
       
   264             }
       
   265             include ($_SERVER['DOCUMENT_ROOT'] ."/fhiiqm/inc/tel_dat_show.inc.php");
       
   266         }
       
   267         echo "</div>";
       
   268         echo "<p class='sc'>&nbsp;&nbsp;&nbsp;<a href=\"tel_flist.php?$getp\" target=\"_self\" title=\"Telefonliste\">Telefonliste</a></p>\n"; 
       
   269         echo "<p class='sc'>&nbsp;&nbsp;&nbsp;<a href=\"".$_SERVER["PHP_SELF"]."\" target=\"_self\" title=\"Telefon erfassen\">Neue Telefon-Nummer erfassen</a></p>\n";    
       
   270     }
       
   271 ?>