public function process() { if (!empty($this->value['tmp_name']) && !empty($this->value['name'])) { $result = FileManager::MoveUpload($this->value['tmp_name'], $this->_directory . '/' . $this->value['name']); if (!FileManager::Error()) { $this->value = basename($result); } else { $this->error = 'Unable to upload ' . $this->label . ': ' . FileManager::Error(); } } else { $this->value = ''; } }
<?php if ($_SERVER['REQUEST_METHOD'] == 'POST') { $base = TYPEF_DIR . '/files/public/userfiles/' . Typeframe::User()->get('userid'); if (!file_exists($base)) { mkdir($base); } $folder = isset($_REQUEST['folder']) ? $_REQUEST['folder'] : ''; $currentFolder = "{$base}/{$folder}"; $moved = FileManager::MoveUpload($_FILES['upload']['tmp_name'], "{$currentFolder}/{$_FILES['upload']['name']}"); $message = ''; if ($moved) { $moved = basename($moved); } else { $moved = ''; $message = 'Upload failed.'; } if (!empty($_REQUEST['command']) && $_REQUEST['command'] == 'BrowserUpload') { Typeframe::Redirect('File uploaded.', TYPEF_WEB_DIR . '/ckeditor/browse?type=' . $_REQUEST['type'] . '&folder=' . $_REQUEST['folder'] . '&CKEditorFuncNum=' . $_REQUEST['CKEditorFuncNum']); } else { if ($moved) { $pm->setVariable('file', TYPEF_WEB_DIR . '/files/public/userfiles/' . Typeframe::User()->get('userid') . ($folder ? '/' . $folder : '') . '/' . $moved); } $pm->setVariable('funcnum', $_REQUEST['CKEditorFuncNum']); $pm->setVariable('message', $message); } }
if ($_FILES['___uploadfile']['error'] == UPLOAD_ERR_PARTIAL) { returnerror('The uploaded file was only partially uploaded. '); } // 3 if ($_FILES['___uploadfile']['error'] == UPLOAD_ERR_NO_FILE) { returnerror('No file was uploaded. '); } // 4 if ($_FILES['___uploadfile']['error'] == UPLOAD_ERR_NO_TMP_DIR) { returnerror('Missing a temporary folder.'); } // 6 if ($_FILES['___uploadfile']['error'] == UPLOAD_ERR_CANT_WRITE) { returnerror('Failed to write file to disk.'); } // 7 if ($_FILES['___uploadfile']['error'] == UPLOAD_ERR_EXTENSION) { returnerror('A PHP extension stopped the file upload.'); } // 8 // basedir needs to start with a '/'. if ($_POST['basedir'][0] != '/') { $_POST['basedir'] = '/' . $_POST['basedir']; } // Guess I should do the save now that all checks have passed... $image = @FileManager::MoveUpload($_FILES['___uploadfile']['tmp_name'], TYPEF_DIR . $_POST['basedir'] . '/' . $_FILES['___uploadfile']['name']); if (!$image) { returnerror('Unable to move uploaded file to ' . $_POST['basedir']); } // Must have went through. die(json_encode(array('status' => 1, 'filename' => $image, 'basename' => basename($image))));