Точно так же, как говорится в ошибке, путь, который вы пытаетесь скопировать, является каталогом, а не путем к файлу
Проблема не в месяце
Дело в том, что путь заканчивается как : uploads/2020/01
Пока должно быть: uploads/2020/01/filename.ext
Вы можете получить оригинальное имя файла с помощью $_FILES['file']['name']
-> $_FILES['rtk']['name']['5']['file']
$dir = "uploads/" . date('Y') . '/' . date('m');
$fileName = $_FILES['rtk']['name']['5']['file'];
$fullPath = $dir . '/' . $fileName;
if (!file_exists($dir)) {
mkdir($dir, 0755, true);
}
move_uploaded_file($_FILES['rtk']['tmp_name']['5']['file'], $fullPath);
- - Чтобы пользователи не могли заменять файлы друг друга, вы можете добавить уникальный префикс, например, просто используя uniqid()
$dir = "uploads/" . date('Y') . '/' . date('m');
$fileName = uniqid() . '_' . $_FILES['rtk']['name']['5']['file'];
$fullPath = $dir . '/' . $fileName;
if (!file_exists($dir)) {
mkdir($dir, 0755, true);
}
move_uploaded_file($_FILES['rtk']['tmp_name']['5']['file'], $fullPath);