Commit b5c2b014b397140d14e88a93b95fae5f9aba4dce
1 parent
4a75227e
Exists in
master
and in
110 other branches
uploaded_max_filesize conversion to bytes
Showing
1 changed file
with
26 additions
and
4 deletions
Show diff stats
php/uploadFile.php
... | ... | @@ -49,7 +49,23 @@ |
49 | 49 | |
50 | 50 | return $ContentLength; |
51 | 51 | } |
52 | + | |
53 | + function return_bytes($val) { | |
54 | + $val = trim($val); | |
55 | + $last = strtolower($val[strlen($val)-1]); | |
56 | + switch($last) { | |
57 | + // Le modifieur 'G' est disponible depuis PHP 5.1.0 | |
58 | + case 'g': | |
59 | + $val *= 1024; | |
60 | + case 'm': | |
61 | + $val *= 1024; | |
62 | + case 'k': | |
63 | + $val *= 1024; | |
64 | + } | |
52 | 65 | |
66 | + return $val; | |
67 | + } | |
68 | + | |
53 | 69 | /** |
54 | 70 | * Main |
55 | 71 | */ |
... | ... | @@ -59,8 +75,7 @@ |
59 | 75 | |
60 | 76 | // error_reporting(E_ERROR | E_WARNING | E_PARSE); |
61 | 77 | |
62 | - if (!isset($_POST['sessionID'])) | |
63 | - { | |
78 | + if (!isset($_POST['sessionID'])) { | |
64 | 79 | $response = array( 'success' => false, 'error' => ': Check that uploaded file size is less than '.ini_get('upload_max_filesize')); |
65 | 80 | die(json_encode($response)); |
66 | 81 | } |
... | ... | @@ -70,8 +85,14 @@ |
70 | 85 | define('USERWSDIR', USERPATH."/".$_POST['sessionID']."/WS/"); |
71 | 86 | define('USERWORKINGDIR', USERPATH."/".$_POST['sessionID']."/RES/"); |
72 | 87 | define('ATTACHMENTDIR', DATAPATH."/Feedback/Attach/"); |
73 | - define('maxSize',$_POST['MAX_FILE_SIZE'] < ini_get('upload_max_filesize')); | |
74 | 88 | |
89 | + $upload_max_filesize = return_bytes(ini_get('upload_max_filesize')); | |
90 | + | |
91 | + if ($upload_max_filesize > $_POST['MAX_FILE_SIZE']) | |
92 | + define('maxSize',$_POST['MAX_FILE_SIZE']); | |
93 | + else | |
94 | + define('maxSize',$upload_max_filesize); // NEVER ! | |
95 | + | |
75 | 96 | if (!is_dir(USERTEMPDIR)) mkdir(USERTEMPDIR.'/', 0755, true); |
76 | 97 | if (!is_dir(ATTACHMENTDIR)) mkdir(ATTACHMENTDIR.'/', 0755, true); |
77 | 98 | |
... | ... | @@ -157,7 +178,8 @@ |
157 | 178 | |
158 | 179 | if ($fileSize > maxSize) |
159 | 180 | { |
160 | - $response = array( 'success' => false, 'error' => 'The uploaded file exceeds '.maxSize); | |
181 | + $maxMB = maxSize/1000000; | |
182 | + $response = array( 'success' => false, 'error' => 'The uploaded file exceeds '.$maxMB.'MB'); | |
161 | 183 | die(json_encode($response)); |
162 | 184 | } |
163 | 185 | ... | ... |