file-storage/public/upload.php

30 lines
1.2 KiB
PHP
Raw Permalink Normal View History

2024-01-15 20:37:43 +01:00
<?php
function join_paths() {
$paths = array();
foreach (func_get_args() as $arg) {
if ($arg !== '') { $paths[] = $arg; }
}
return preg_replace('#/+#','/',join('/', $paths));
}
$filesDir = "../../files/"; // Musi kończyć się slashem!
$redirectRoute = "/pen"; // Adres względny do któego ma przekierować, jeżeli masz index.php w public/upload to powinno być to /upload
if (isset($_POST["path"])) { // Jeżeli to faktycznie jest formularz i zawiera ścieżke do kopiowania pliku
$targetFile = join_paths($filesDir, $_POST["path"], basename($_FILES["file"]["name"]));
if (!file_exists($targetFile)) {
if (move_uploaded_file($_FILES["file"]["tmp_name"], $targetFile)) { // Skopiuj zuploadowany plik do poprawnego miejsca na serwerze
http_response_code(200);
} else { // W razie gdyby coś nie wyszło po stronie serwera podczas kopiowania pliku
http_response_code(500);
echo "Sorry, there was an error uploading your file.";
}
} else {
http_response_code(409);
echo "409 - Resource already exists (file already exists)";
}
}
?>