file-storage/public/create-folder.php

35 lines
1.3 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));
}
$request_body = file_get_contents('php://input');
$data = json_decode($request_body);
$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
$targetName = $data->name;
$targetPath = $data->path;
$fullTargetPath = join_paths($filesDir, $targetPath, $targetName);
if (!file_exists($fullTargetPath)) {
if (mkdir($fullTargetPath)) { // Skopiuj zuploadowany plik do poprawnego miejsca na serwerze
http_response_code(200);
header('Location: '.$redirectRoute); // Przekieruj z powrotem do strony głównej
} else { // W razie gdyby coś nie wyszło po stronie serwera podczas kopiowania pliku
http_response_code(500);
echo "500 - Sorry, there was an error creating your folder.";
}
} else {
http_response_code(409);
echo "409 - File already exists";
}
?>