diff options
author | Florian Pritz <bluewind@xinu.at> | 2011-09-23 20:03:39 +0200 |
---|---|---|
committer | Florian Pritz <bluewind@xinu.at> | 2011-09-24 18:42:05 +0200 |
commit | ef07b599cbe06bc6111ebc5584a18f75a0ca89a2 (patch) | |
tree | c6494c395f2a6fc9f17534fcddab88f82f8d564a /files | |
parent | b23d030925e6313d644693a346ba48cbf0ecda95 (diff) | |
download | nextcloud-server-ef07b599cbe06bc6111ebc5584a18f75a0ca89a2.tar.gz nextcloud-server-ef07b599cbe06bc6111ebc5584a18f75a0ca89a2.zip |
files/ajax: catch upload errors
If the file wasn't uploaded successfully bail early.
Signed-off-by: Florian Pritz <bluewind@xinu.at>
Diffstat (limited to 'files')
-rw-r--r-- | files/ajax/upload.php | 18 |
1 files changed, 18 insertions, 0 deletions
diff --git a/files/ajax/upload.php b/files/ajax/upload.php index c642b0ded1c..f005a8af226 100644 --- a/files/ajax/upload.php +++ b/files/ajax/upload.php @@ -14,6 +14,24 @@ if( !OC_User::isLoggedIn()){ exit(); } +if (!isset($_FILES['files'])) { + echo json_encode( array( "status" => "error", "data" => array( "message" => "No file was uploaded. Unknown error" ))); + exit(); +} +foreach ($_FILES['files']['error'] as $error) { + if ($error != 0) { + $errors = array( + 0=>$l->t("There is no error, the file uploaded with success"), + 1=>$l->t("The uploaded file exceeds the upload_max_filesize directive in php.ini"), + 2=>$l->t("The uploaded file exceeds the MAX_FILE_SIZE directive that was specified in the HTML form"), + 3=>$l->t("The uploaded file was only partially uploaded"), + 4=>$l->t("No file was uploaded"), + 6=>$l->t("Missing a temporary folder") + ); + echo json_encode( array( "status" => "error", "data" => array( "message" => $errors[$error] ))); + exit(); + } +} $files=$_FILES['files']; $dir = $_POST['dir']; |