From ef07b599cbe06bc6111ebc5584a18f75a0ca89a2 Mon Sep 17 00:00:00 2001 From: Florian Pritz Date: Fri, 23 Sep 2011 20:03:39 +0200 Subject: [PATCH] files/ajax: catch upload errors If the file wasn't uploaded successfully bail early. Signed-off-by: Florian Pritz --- files/ajax/upload.php | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+) 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']; -- 2.39.5