Файлы не удаляются - PullRequest
       0

Файлы не удаляются

0 голосов
/ 12 января 2011

я бегал chown -R www-data:www-data /srv/www/dev.example.com/public_html/uploads/ не работал Пробовал chmod 777 не работать.

define('UPLOADPATH', "/srv/www/dev.example.com/public_html/uploads/members/");
$userId = 6;
$dir = UPLOADPATH . $userId;
rmdir($dir);

не удаляет папку пользователей (она работает, чтобы уничтожить все их файлы при удалении учетной записи) также (чтобы удалить только одну фотографию)

 $RemovePreview = UPLOADPATH . $userId. '/' . $file . '_preview.' . $image_ending;
                        if (file_exists($RemovePreview))
                        {
                            @unlink($RemovePreview);
                        }

file и image_ending приходят из моей базы данных. Также не удалит файл.

Я действительно не знаю, что случилось. Не уверены, что это Php, сервер или оба вопроса?

Ответы [ 2 ]

1 голос
/ 12 января 2011

Ваш каталог пуст?Документация на rmdir говорит, что каталог должен быть пустым;то, что вы можете искать, это рекурсивная версия rmdir:

function rrmdir($dir)
{
    if (is_dir($dir)) {
        $objects = scandir($dir);
        foreach ($objects as $object) {
            if ($object != "." && $object != "..") {
                if (filetype($dir."/".$object) == "dir")
                    rrmdir($dir."/".$object);
                else
                    unlink($dir."/".$object);
            }
        }
        reset($objects);
        rmdir($dir);
    }
} 
0 голосов
/ 12 января 2011

Используйте sudo, когда вы используете chown или chmod для файлов или директории, которой вы не владеете.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...