webApp/php/upload.php
2024-09-19 23:45:46 +02:00

58 lines
1.1 KiB
PHP

<?php
error_reporting(E_ALL);
ini_set('display_errors', TRUE);
ini_set('display_startup_errors', TRUE);
include 'fonction.php';
$max_size = convertToBytes('5GB');
$root = $_SERVER["DOCUMENT_ROOT"];
$target_dir = "$root/uploads/";
if(! isset($_FILES["file"])) {
header("HTTP/1.1 400 No file Upload");
exit();
}
$file = $_FILES["file"];
$name = basename($file["name"]);
$size = basename($file["size"]);
if ((folderSize($target_dir) + $size) > $max_size) {
header("HTTP/1.1 400 " . $name . " file too large");
exit();
}
if (! extension_loaded('mbstring')) {
header("HTTP/1.1 500 php module missing");
exit();
}
if(! mb_check_encoding($name)) {
header("HTTP/1.1 400 Bad encode");
exit();
}
$target_file = $target_dir.$name;
// Check if file already exists
if (file_exists($target_file)) {
header("HTTP/1.1 400 This file already exists");
echo "This file already exists.";
}
else {
if (move_uploaded_file($file["tmp_name"], $target_file)) {
echo "The File ".$name." of size ".formatBytes($size)." has been uploaded.";
} else {
header("HTTP/1.1 500");
echo "There was an error uploading your file.";
}
}
?>