Example #1
0
function _error($message)
{
    return _response(false, $message);
}
 * Simple example backend script to serve the FormDataUploader (multipart upload). 
 */
require __DIR__ . '/_common.php';
$config = (require __DIR__ . '/_config.php');
$fileName = '';
$mimeType = '';
$fileSize = 0;
/*
 * If there is no file data, something wrong has happened. One possible reason is - the uploaded
 * file size exceeds the maximum allowed POST or upload size.
 */
if (empty($_FILES)) {
    _error('No file received');
}
foreach ($_FILES as $fileName => $fileData) {
    if ($fileData['error'] !== 0) {
        _error(sprintf("Upload error '%d'", $fileData['error']));
    }
    $fileName = htmlspecialchars($fileData['name']);
    $mimeType = $fileData['type'];
    $fileSize = $fileData['size'];
    $targetFile = $config['upload_dir'] . '/' . $fileName;
    if (!$config['fake']) {
        if (!move_uploaded_file($fileData['tmp_name'], $targetFile)) {
            _error('Error saving uploaded file');
        }
    }
}
_log(sprintf("[multipart] Uploaded %s, %s, %d byte(s)", $fileName, $mimeType, $fileSize));
_response();
Example #3
0
        // Can replace strtolower() function with strtoupper().
        $class = CHANGE_CLASS_CASE ? strtolower(filter_input(INPUT_GET, 'ipage')) : filter_input(INPUT_GET, 'ipage');
        // Php (controller) file to be included
        $page = CONTROLLER_PREFIX . $class . '.php';
        if (file_exists(CONTROLLER_PATH . $page)) {
            include_once CONTROLLER_PATH . $page;
            if (!is_null(filter_input(INPUT_GET, 'imethod')) && preg_match('/[a-zA-Z0-9_]/', filter_input(INPUT_GET, 'imethod'))) {
                _response(1, $format, 200, new $class(), filter_input(INPUT_GET, 'imethod') . '_get', requestArrayFilter($_GET));
            } else {
                _response(0, $format, 400);
            }
        } else {
            _response(0, $format, 404);
        }
    } else {
        _response(0, $format, 400);
    }
}
// Filter reserve keywords from request string
function requestArrayFilter($requestArray)
{
    $paraArray = array();
    foreach ($requestArray as $key => $value) {
        if (!in_array($key, array('ipage', 'imethod', 'ikey', 'ipass', 'iformat'))) {
            $paraArray[0][$key] = $value;
        }
    }
    return $paraArray;
}
// Function to debug
function logger($msg)
Example #4
0
        if (!$outputStream) {
            _error('Error creating local file');
        }
    }
    while (!feof($inputStream)) {
        $bytesWritten = 0;
        $data = fread($inputStream, 1024);
        if (!$config['fake']) {
            $bytesWritten = fwrite($outputStream, $data);
        } else {
            $bytesWritten = strlen($data);
        }
        if (false === $bytesWritten) {
            _error('Error writing data to file');
        }
        $realSize += $bytesWritten;
    }
    $result = parseFile($outputFilename, $inputFileType);
    //$result = make($sql);
    if (!$config['fake']) {
        fclose($outputStream);
    }
} else {
    _error('Error reading input');
}
if ($realSize != $size) {
    _error('The actual size differs from the declared size in the headers');
}
_log(sprintf("[raw] Uploaded %s, %s, %d byte(s)", $fileName, $mimeType, $realSize));
_response(true, 'OK', $result);