Функция PHP Rename Permission denied

На сервере сценарий создает новую папку, устанавливает chmod на 0777, но затем он пытается переместить файлы в эту папку, я получаю ошибку: Permission denied.

mkdir("../".$new_1, 0777); chmod("../".$new_1, 0777); mkdir("../".$new_1."/".$new_2, 0777); chmod("../".$new_1."/".$new_2, 0777); rename("files/".$failai[$i].".jpg", "../".$new_1.'/'.$new_2."/".$failai[$i].".jpg"); 

Предупреждение: rename (files / new_file.jpg, .. / 112a / 112b / Tech_diz_1.jpg) [function.rename]: разрешение отклонено в .code / Jpg & Html.php в строке 82

Любые решения?

вам также понадобятся права на чтение и запись в исходной папке.

только наличие разрешений для целевой папки недостаточно, поскольку файл удален из его источника.

У вас также должно быть разрешение на изменение файла "files/".$failai[$i].".jpg" . Я бы предположил, что это происходит неправильно

У вас есть доступ на запись к файлу? Если нет, убедитесь, что вы chmod файл до 777 или, по крайней мере, до 644 .

Также проверьте наличие файла, file_exists() имя файла file_exists() на имя файла перед переименованием. 🙂

Кроме того, после перемещения файла вам может потребоваться установить разрешения с помощью chmod() чтобы сделать его доступным для переименования. Вы можете сделать это следующим образом:

 <?php chmod($uploadedFile, 0755); ?>