--- a/fhiiqm/inc/file_upload.inc.php Fri Jan 17 08:50:55 2014 +0100
+++ b/fhiiqm/inc/file_upload.inc.php Wed Aug 06 09:42:40 2014 +0200
@@ -1,239 +1,239 @@
-<?php
-
-/**
- * @author B.Schwarzer, Fritz-Haber-Institut
- * @copyright 05/2011
- */
-
-function upload($ufile, $fname, $id, $dir="documents")
-{
- /**
- * prueft Uploadfile und verschiebt es in gewaehltes Verzeichnis
- * Parameter
- * $ufile = upload-File: name <input>-Feld
- * $fname = gewaehlter filename
- * $id = ID
- * $dir = Verzeichnisname der Upload-Files
- */
-
- $errupl1 = null;
- $errupl2 = null;
- $errupl3 = null;
- // Test filesize, filetyp
- if ($_FILES[$ufile]["size"] < 1) $errupl1 .= "$ufile: File ist leer! ";
- if ($_FILES[$ufile]["size"] > 32000000) $errupl1 .= "$ufile: File > 32MByte! ";
-// list($first,$rest) = explode(".",$_FILES[$ufile]["name"]);
- $filep = explode(".",$_FILES[$ufile]["name"]);
- $anz = count($filep);
- $typ = $filep[$anz-1];
- if (substr($typ,0,2)=="ph" || substr($typ,0,2)=="pl" || substr($typ,0,2)=="cg" || substr($typ,0,2)=="ex") $errupl2 .="$ufile: falscher Filetyp! ";
-//echo "filesize=" . $_FILES[$ufile]["size"] . "<br>\n";
- if ($_FILES[$ufile]["error"] > 0) $errupl3 = "Fehler upload: ".$_FILES[$ufile]["error"];
- if (!$errupl1 && !$errupl2 && !$errupl3)
- {
- // File laden
- $filetyp = $_FILES[$ufile]['type'];
- $filesize = $_FILES[$ufile]['size'];
- $filename = basename(addslashes($_FILES[$ufile]["name"]));
- $tempname = $_FILES[$ufile]['tmp_name'];
- if ($fname)
- {
- $ret = move_uploaded_file ( $tempname, $dir."/".$id."_".$fname);
- }
- else
- $ret = move_uploaded_file ( $tempname, $dir."/".$id."_".$filename);
-
- if ($ret)
- {
- // echo "Error upload: ". $_FILES['pfile']['error'] .", $tempname<br>\n";
- if ($fname) $fname=$id."_".$fname; else $fname = $id."_".$filename;
- echo "<p class=\"green\">Upload von '" . $_FILES[$ufile]["name"]."' erfolgreich.<br>
- gespeicherter Dateiname: '". $fname ."'</p>\n";
- return true;
- }
- else
- {
- echo "<p class=\"red\">Upload von '" . $_FILES[$ufile]["name"]."' fehlgeschlagen.</p>\n";
- return false;
- }
- }
- else
- {
- echo "<p class=\"red\">Upload von '" . $_FILES[$ufile]["name"]."' nicht möglich!<br>$errupl1<br>$errupl2<br>$errupl3</p>\n";
- echo "<p>Upload bitte wiederholen</p>\n";
- return false;
- }
-}
-
-function upload_multif($ufile, $fname, $id, $dir="documents")
-{
- /**
- * prueft Uploadfile und verschiebt es in gewaehltes Verzeichnis
- * Parameter
- * $ufile = upload-File-Array: name <input>-Felder
- * $fname = gewaehltes filenamen-Array
- * $id = ID
- * $dir = Verzeichnisname der Upload-Files
- */
-
- $errupl1 = null;
- $errupl2 = null;
- $errupl3 = null;
- $ret = true;
- // Test filesize, filetyp
- foreach ($_FILES[$ufile]['error'] as $key => $error)
- {
- if ($error == UPLOAD_ERR_OK)
- {
- if ($_FILES[$ufile]['size'][$key] < 1) $errupl1 .= $_FILES[$ufile]['name'][$key].": File ist leer! ";
- if ($_FILES[$ufile]['size'][$key] > 32000000) $errupl1 .= $_FILES[$ufile]['name'][$key].": File > 32MByte! ";
- // list($first,$rest) = explode(".",$_FILES[$ufile]["name"]);
- $filep = explode(".",$_FILES[$ufile]['name'][$key]);
- $anz = count($filep);
- $typ = $filep[$anz-1];
- if (substr($typ,0,2)=="ph" || substr($typ,0,2)=="pl" || substr($typ,0,2)=="cg" || substr($typ,0,2)=="ex") $errupl2 .="$ufile: falscher Filetyp! ";
- //echo "filesize=" . $_FILES[$ufile]["size"] . "<br>\n";
- if (!$errupl1 && !$errupl2)
- {
- // File laden
- $filename = basename(addslashes($_FILES[$ufile]['name'][$key]));
- $tempname = $_FILES[$ufile]['tmp_name'][$key];
-//echo "key = $key, fname = ".$fname[$key].", filename = $filename, uploadname = " . $_FILES[$ufile]['name'][$key] ."<br />";
- if ($fname[$key])
- {
- $ret = move_uploaded_file ( $tempname, $dir."/".$id."_".$fname[$key]);
- }
- else
- $ret = move_uploaded_file ( $tempname, $dir."/".$id."_".$filename);
-
- if ($ret)
- {
- if ($fname[$key]) $fnam=$id."_".$fname[$key]; else $fnam = $id."_".$filename;
- echo "<p class=\"green\">Upload von '$filename' erfolgreich.<br>
- gespeicherter Dateiname: '". $fnam ."'</p>\n";
- $ret = $ret && true;
- }
- else
- {
- echo "<p class=\"red\">Upload von '" . $_FILES[$ufile]["name"][$key]."' fehlgeschlagen.</p>\n";
- $ret = $ret && false;
- }
- }
- else
- {
- $errupl3 = "Fehler upload: ".$_FILES[$ufile]["error"][$key];
- echo "<p class=\"red\">Upload von '" . $_FILES[$ufile]["name"][$key]."' nicht möglich!<br>$errupl1<br>$errupl2<br>$errupl3</p>\n";
- echo "<p>Upload bitte wiederholen</p>\n";
- $ret = $ret && false;
- }
- }
- $errupl1 = null;
- $errupl2 = null;
- $errupl3 = null;
- }
- return $ret;
-}
-
-function gen_filename($nfile, $ufile, $id, $upload=1)
-{
- /** generiert Filenamen aus Eingabefilenamen und Uploadfilenamen
- * wenn upload<>1, dann aus neuem Dateinamen+alten (wenn nicht angegeben:Typ)
- * Parameter
- * $nfile - vorgegebener Name durch Nutzer
- * $ufile - Name aus Upload-Feld Formular, bzw. alter Filename
- * $id - ID
- */
-
- if ($nfile > '!')
- {
- $su = array("ä","ö","ü","ß","Ä","Ö","Ü");
- $er = array("ae","oe","ue","ss","Ae","Oe","Ue");
-
- switch ($id)
- {
- case ($id < 10):
- $len = 2;
- break;
- case ($id < 100):
- $len = 3;
- break;
- case ($id < 1000):
- $len = 4;
- break;
- }
-// echo "cid, len : $cid, $len<br><br>\n";
- // Dokument-Typ aus Dateibezeichnung bzw. Uploadfile, wenn nicht angegeben
- $filea = explode(".",$nfile);
- $anz = count($filea);
- if ($anz>1) // File-Typ im Eingabenamen angegeben
- {
- $typ = $filea[$anz-1];
- for ($i=0; $i<$anz-1; $i++)
- {
- $fname .= "." . $filea[$i];
- }
- }
- else // File-Typ aus Uploadfile
- {
- if ($upload)
- $filep = explode(".",$_FILES[$ufile]['name']);
- else
- $filep = explode(".",$ufile);
- $anz = count($filep);
- if ($anz>1) $typ = $filep[$anz-1]; else $typ = "pdf";
- $fname = $nfile;
- }
- // ev. vorhandene gaengige Umlaute ersetzen
- $fname = str_replace($su,$er,$fname);
-
- if (strlen($typ) < 3) $typ="pdf";
- if (substr($fname,0,1) == ".")
- $fname = substr($fname,1,50-(4+$len)) . "." .$typ;
- else
- $fname = substr($fname,0,50-(4+$len)) . "." .$typ;
- if (substr($fname,0,$len) == "$id" . "_") $fname = substr($fname,$len,50);
- }
- else $fname = "";
- return $fname;
-}
-
-function mod_file($path,$id,$fname_new,$mod,$fname_old="")
-{
- /** Loeschen, Aendern des Namens von Vetragsdokumenten
- * Parameter
- * $path - Pfad zur Datei
- * $id - ID des zu bearbeiteten Files, beginnt mit 'ID_'
- * $fname_new - neuer Filename
- * $mod - del = Loeschen
- * upd = Umbenennen
- * $fname_old - alter Filename
- */
-
- if ($fname_old == "") $fname_old = exec("ls ".$path." | grep '". $id . "_'");
- if ($fname_old)
- {
- if (file_exists($path."/".$fname_old))
- {
- chmod($path."/".$fname_old,0644);
- if ($mod == "del")
- {
- return unlink($path."/".$fname_old);
- }
- elseif ($mod == "upd" && $fname_new>"!")
- {
- return rename($path."/".$fname_old, $path."/".$fname_new);
- }
- }
- else return true;
- }
- else return false;
-}
-// Test Aufruf
-/*
- if (mod_file("/var/www/fhiiqm/documents","20","","del"))
- echo "Erfolg!\n";
- else
- echo "Misserfolg\n";
-*/
-
+<?php
+
+/**
+ * @author B.Schwarzer, Fritz-Haber-Institut
+ * @copyright 05/2011
+ */
+
+function upload($ufile, $fname, $id, $dir="documents")
+{
+ /**
+ * prueft Uploadfile und verschiebt es in gewaehltes Verzeichnis
+ * Parameter
+ * $ufile = upload-File: name <input>-Feld
+ * $fname = gewaehlter filename
+ * $id = ID
+ * $dir = Verzeichnisname der Upload-Files
+ */
+
+ $errupl1 = null;
+ $errupl2 = null;
+ $errupl3 = null;
+ // Test filesize, filetyp
+ if ($_FILES[$ufile]["size"] < 1) $errupl1 .= "$ufile: File ist leer! ";
+ if ($_FILES[$ufile]["size"] > 32000000) $errupl1 .= "$ufile: File > 32MByte! ";
+// list($first,$rest) = explode(".",$_FILES[$ufile]["name"]);
+ $filep = explode(".",$_FILES[$ufile]["name"]);
+ $anz = count($filep);
+ $typ = $filep[$anz-1];
+ if (substr($typ,0,2)=="ph" || substr($typ,0,2)=="pl" || substr($typ,0,2)=="cg" || substr($typ,0,2)=="ex") $errupl2 .="$ufile: falscher Filetyp! ";
+//echo "filesize=" . $_FILES[$ufile]["size"] . "<br>\n";
+ if ($_FILES[$ufile]["error"] > 0) $errupl3 = "Fehler upload: ".$_FILES[$ufile]["error"];
+ if (!$errupl1 && !$errupl2 && !$errupl3)
+ {
+ // File laden
+ $filetyp = $_FILES[$ufile]['type'];
+ $filesize = $_FILES[$ufile]['size'];
+ $filename = basename(addslashes($_FILES[$ufile]["name"]));
+ $tempname = $_FILES[$ufile]['tmp_name'];
+ if ($fname)
+ {
+ $ret = move_uploaded_file ( $tempname, $dir."/".$id."_".$fname);
+ }
+ else
+ $ret = move_uploaded_file ( $tempname, $dir."/".$id."_".$filename);
+
+ if ($ret)
+ {
+ // echo "Error upload: ". $_FILES['pfile']['error'] .", $tempname<br>\n";
+ if ($fname) $fname=$id."_".$fname; else $fname = $id."_".$filename;
+ echo "<p class=\"green\">Upload von '" . $_FILES[$ufile]["name"]."' erfolgreich.<br>
+ gespeicherter Dateiname: '". $fname ."'</p>\n";
+ return true;
+ }
+ else
+ {
+ echo "<p class=\"red\">Upload von '" . $_FILES[$ufile]["name"]."' fehlgeschlagen.</p>\n";
+ return false;
+ }
+ }
+ else
+ {
+ echo "<p class=\"red\">Upload von '" . $_FILES[$ufile]["name"]."' nicht möglich!<br>$errupl1<br>$errupl2<br>$errupl3</p>\n";
+ echo "<p>Upload bitte wiederholen</p>\n";
+ return false;
+ }
+}
+
+function upload_multif($ufile, $fname, $id, $dir="documents")
+{
+ /**
+ * prueft Uploadfile und verschiebt es in gewaehltes Verzeichnis
+ * Parameter
+ * $ufile = upload-File-Array: name <input>-Felder
+ * $fname = gewaehltes filenamen-Array
+ * $id = ID
+ * $dir = Verzeichnisname der Upload-Files
+ */
+
+ $errupl1 = null;
+ $errupl2 = null;
+ $errupl3 = null;
+ $ret = true;
+ // Test filesize, filetyp
+ foreach ($_FILES[$ufile]['error'] as $key => $error)
+ {
+ if ($error == UPLOAD_ERR_OK)
+ {
+ if ($_FILES[$ufile]['size'][$key] < 1) $errupl1 .= $_FILES[$ufile]['name'][$key].": File ist leer! ";
+ if ($_FILES[$ufile]['size'][$key] > 32000000) $errupl1 .= $_FILES[$ufile]['name'][$key].": File > 32MByte! ";
+ // list($first,$rest) = explode(".",$_FILES[$ufile]["name"]);
+ $filep = explode(".",$_FILES[$ufile]['name'][$key]);
+ $anz = count($filep);
+ $typ = $filep[$anz-1];
+ if (substr($typ,0,2)=="ph" || substr($typ,0,2)=="pl" || substr($typ,0,2)=="cg" || substr($typ,0,2)=="ex") $errupl2 .="$ufile: falscher Filetyp! ";
+ //echo "filesize=" . $_FILES[$ufile]["size"] . "<br>\n";
+ if (!$errupl1 && !$errupl2)
+ {
+ // File laden
+ $filename = basename(addslashes($_FILES[$ufile]['name'][$key]));
+ $tempname = $_FILES[$ufile]['tmp_name'][$key];
+//echo "key = $key, fname = ".$fname[$key].", filename = $filename, uploadname = " . $_FILES[$ufile]['name'][$key] ."<br />";
+ if ($fname[$key])
+ {
+ $ret = move_uploaded_file ( $tempname, $dir."/".$id."_".$fname[$key]);
+ }
+ else
+ $ret = move_uploaded_file ( $tempname, $dir."/".$id."_".$filename);
+
+ if ($ret)
+ {
+ if ($fname[$key]) $fnam=$id."_".$fname[$key]; else $fnam = $id."_".$filename;
+ echo "<p class=\"green\">Upload von '$filename' erfolgreich.<br>
+ gespeicherter Dateiname: '". $fnam ."'</p>\n";
+ $ret = $ret && true;
+ }
+ else
+ {
+ echo "<p class=\"red\">Upload von '" . $_FILES[$ufile]["name"][$key]."' fehlgeschlagen.</p>\n";
+ $ret = $ret && false;
+ }
+ }
+ else
+ {
+ $errupl3 = "Fehler upload: ".$_FILES[$ufile]["error"][$key];
+ echo "<p class=\"red\">Upload von '" . $_FILES[$ufile]["name"][$key]."' nicht möglich!<br>$errupl1<br>$errupl2<br>$errupl3</p>\n";
+ echo "<p>Upload bitte wiederholen</p>\n";
+ $ret = $ret && false;
+ }
+ }
+ $errupl1 = null;
+ $errupl2 = null;
+ $errupl3 = null;
+ }
+ return $ret;
+}
+
+function gen_filename($nfile, $ufile, $id, $upload=1)
+{
+ /** generiert Filenamen aus Eingabefilenamen und Uploadfilenamen
+ * wenn upload<>1, dann aus neuem Dateinamen+alten (wenn nicht angegeben:Typ)
+ * Parameter
+ * $nfile - vorgegebener Name durch Nutzer
+ * $ufile - Name aus Upload-Feld Formular, bzw. alter Filename
+ * $id - ID
+ */
+
+ if ($nfile > '!')
+ {
+ $su = array("ä","ö","ü","ß","Ä","Ö","Ü");
+ $er = array("ae","oe","ue","ss","Ae","Oe","Ue");
+
+ switch ($id)
+ {
+ case ($id < 10):
+ $len = 2;
+ break;
+ case ($id < 100):
+ $len = 3;
+ break;
+ case ($id < 1000):
+ $len = 4;
+ break;
+ }
+// echo "cid, len : $cid, $len<br><br>\n";
+ // Dokument-Typ aus Dateibezeichnung bzw. Uploadfile, wenn nicht angegeben
+ $filea = explode(".",$nfile);
+ $anz = count($filea);
+ if ($anz>1) // File-Typ im Eingabenamen angegeben
+ {
+ $typ = $filea[$anz-1];
+ for ($i=0; $i<$anz-1; $i++)
+ {
+ $fname .= "." . $filea[$i];
+ }
+ }
+ else // File-Typ aus Uploadfile
+ {
+ if ($upload)
+ $filep = explode(".",$_FILES[$ufile]['name']);
+ else
+ $filep = explode(".",$ufile);
+ $anz = count($filep);
+ if ($anz>1) $typ = $filep[$anz-1]; else $typ = "pdf";
+ $fname = $nfile;
+ }
+ // ev. vorhandene gaengige Umlaute ersetzen
+ $fname = str_replace($su,$er,$fname);
+
+ if (strlen($typ) < 3) $typ="pdf";
+ if (substr($fname,0,1) == ".")
+ $fname = substr($fname,1,50-(4+$len)) . "." .$typ;
+ else
+ $fname = substr($fname,0,50-(4+$len)) . "." .$typ;
+ if (substr($fname,0,$len) == "$id" . "_") $fname = substr($fname,$len,50);
+ }
+ else $fname = "";
+ return $fname;
+}
+
+function mod_file($path,$id,$fname_new,$mod,$fname_old="")
+{
+ /** Loeschen, Aendern des Namens von Vetragsdokumenten
+ * Parameter
+ * $path - Pfad zur Datei
+ * $id - ID des zu bearbeiteten Files, beginnt mit 'ID_'
+ * $fname_new - neuer Filename
+ * $mod - del = Loeschen
+ * upd = Umbenennen
+ * $fname_old - alter Filename
+ */
+
+ if ($fname_old == "") $fname_old = exec("ls ".$path." | grep '". $id . "_'");
+ if ($fname_old)
+ {
+ if (file_exists($path."/".$fname_old))
+ {
+ chmod($path."/".$fname_old,0644);
+ if ($mod == "del")
+ {
+ return unlink($path."/".$fname_old);
+ }
+ elseif ($mod == "upd" && $fname_new>"!")
+ {
+ return rename($path."/".$fname_old, $path."/".$fname_new);
+ }
+ }
+ else return true;
+ }
+ else return true;
+}
+// Test Aufruf
+/*
+ if (mod_file("/var/www/fhiiqm/documents","20","","del"))
+ echo "Erfolg!\n";
+ else
+ echo "Misserfolg\n";
+*/
+
?>
\ No newline at end of file