- $img = @$_FILES['upload'];
- if (!$img or $img['error'] !== UPLOAD_ERR_OK)
- abort('bestand niet goed ontvangen: '.$img['error'], '409 upload error');
-
- $datadir = implode('/', ['data', date('Y')]);
- if (!file_exists($datadir) and !@mkdir($datadir, 0777, TRUE)) {
- abort("bestand kon niet geplaatst worden in $datadir", '409 upload error');
+ $response = ['uploaded' => 0];
+ try {
+ $img = @$_FILES['upload'];
+ $response['fileName'] = $img['name'];
+ if (!$img or $img['error'] !== UPLOAD_ERR_OK)
+ throw new Exception('bestand niet goed ontvangen: '.$img['error']);
+
+ $datadir = implode('/', ['data', date('Y')]);
+ if (!file_exists($datadir) and !@mkdir($datadir, 0777, TRUE)) {
+ throw new Exception("bestand kon niet geplaatst worden in $datadir");
+ }
+
+ $target = $datadir.'/'.$img['name'];
+ $response['url'] = str_replace('%2F', '/', urlencode($target));
+ if (!@move_uploaded_file($img['tmp_name'], $target)) {
+ throw new Exception('bestand kon niet worden opgeslagen');
+ }
+ $response['uploaded']++;