author | Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de> |
Wed, 31 Aug 2011 14:22:19 +0200 | |
changeset 1 | 6288d5685bff |
permissions | -rw-r--r-- |
1
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
1 |
<?php |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
2 |
|
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
3 |
/** |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
4 |
* @author B.Schwarzer, Fritz-Haber-Institut |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
5 |
* @copyright 05/2011 |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
6 |
*/ |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
7 |
|
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
8 |
function upload($ufile, $fname, $id) |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
9 |
{ |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
10 |
// $ufile = upload-File: "vfile" |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
11 |
// $fname = gewaehlter filename |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
12 |
// $id = contract-ID |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
13 |
// echo "<div align=\"center\">\n"; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
14 |
// echo "<table>\n"; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
15 |
$errupl1 = Null; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
16 |
$errupl2 = Null; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
17 |
// Test filesize, filetyp |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
18 |
if ($_FILES[$ufile]["size"] == 0) $errupl1 .= "$ufile: File zu groß! "; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
19 |
// list($first,$rest) = explode(".",$_FILES[$ufile]["name"]); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
20 |
$filep = explode(".",$_FILES[$ufile]["name"]); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
21 |
$anz = count($filep); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
22 |
$typ = $filep[$anz-1]; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
23 |
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! "; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
24 |
//echo "filesize=" . $_FILES[$ufile]["size"] . "<br>\n"; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
25 |
if ($_FILES[$ufile]["error"] > 0) $errupl3 = "Fehler upload: ".$_FILES[$ufile]["error"]; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
26 |
if (!$errupl1 && ! $errupl2 && !$errupl3) |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
27 |
{ |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
28 |
// File laden |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
29 |
$filetyp = $_FILES[$ufile]['type']; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
30 |
$filesize = $_FILES[$ufile]['size']; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
31 |
$filename = addslashes($_FILES[$ufile]["name"]); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
32 |
$tempname = $_FILES[$ufile]['tmp_name']; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
33 |
|
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
34 |
/* |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
35 |
// File in Variable einlesen - nur fuer Ablegen in DB |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
36 |
|
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
37 |
$size = getimagesize($_FILES[$ufile]['tmp_name']); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
38 |
$type = $size['mime']; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
39 |
$width = $size[0]; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
40 |
$hight = $size[1]; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
41 |
$size = $size[3]; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
42 |
// $imgfp = fopen($_FILES[$ufile]['tmp_name'], 'rb'); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
43 |
// $name = $_FILES[$ufile]['name']; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
44 |
|
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
45 |
$fc = fopen($tempname, "rb"); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
46 |
// den Dateiinhalt in $data speichern |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
47 |
$content = fread($fc, $filesize); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
48 |
fclose($fc); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
49 |
// $content = base64_encode(addslashes($content)); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
50 |
$content = addslashes($content); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
51 |
|
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
52 |
if ($ufile == "pfile") |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
53 |
$query="UPDATE tbl_scientist SET |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
54 |
ptname = '$filename', |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
55 |
pttyp = '$filetyp', |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
56 |
pt_width = $width, |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
57 |
pt_hight = $hight, |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
58 |
ptsize = '$size', |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
59 |
portrait = '$content' "; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
60 |
else |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
61 |
$query="UPDATE tbl_scientist SET |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
62 |
imname = '$filename', |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
63 |
imtyp = '$filetyp', |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
64 |
im_width = $width, |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
65 |
im_hight = $hight, |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
66 |
imsize = '$size', |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
67 |
imagew = '$content' "; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
68 |
$query .= " WHERE sc_ID=$scid"; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
69 |
$ret = exec_query($query,""); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
70 |
|
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
71 |
// echo "query_upd = $query, <br>ret=$ret<br>\n"; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
72 |
*/ if ($fname) |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
73 |
{ |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
74 |
$ret = move_uploaded_file ( $tempname, "documents/".$id."_".$fname); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
75 |
} |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
76 |
else |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
77 |
$ret = move_uploaded_file ( $tempname, "documents/".$id."_".$filename); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
78 |
|
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
79 |
if ($ret) |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
80 |
{ |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
81 |
// echo "Error upload: ". $_FILES['pfile']['error'] .", $tempname<br>\n"; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
82 |
if ($fname) $fname=$id."_".$fname; else $fname = $id."_".$filename; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
83 |
echo "<tr><th class=\"green\" align=\"left\">Upload von '" . $_FILES[$ufile]["name"]."' erfolgreich.<br> |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
84 |
gespeicherter Dateiname: '". $fname ."'</th></tr>\n"; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
85 |
return true; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
86 |
} |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
87 |
else |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
88 |
{ |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
89 |
echo "<tr><th class=\"red\" align=\"left\">Upload von '" . $_FILES[$ufile]["name"]."' fehlgeschlagen.</td></tr>\n"; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
90 |
return false; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
91 |
} |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
92 |
} |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
93 |
else |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
94 |
{ |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
95 |
echo "<tr><th class=\"red\" align=\"left\">Upload von '" . $_FILES[$ufile]["name"]."' nicht möglich!<br>$errupl1<br>$errupl2<br>$errupl3</th></tr>\n"; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
96 |
echo "<tr><th align=\"left\"><br><a href=\"sc_desc_update.php\">Upload bitte wiederholen</a><br></th></tr>\n"; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
97 |
return false; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
98 |
} |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
99 |
// echo "</table>\n"; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
100 |
// echo "</div>\n"; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
101 |
} |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
102 |
|
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
103 |
$ret = 0; |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
104 |
$ret = upload("vfile", $confile, $conid); |
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
105 |
|
6288d5685bff
Stand v. 31.08.2011
Bettina Schwarzer <schwarzer@fhi-berlin.mpg.de>
parents:
diff
changeset
|
106 |
?> |