2016-12-09 2 views
0

Используя следующий код, я получаю сообщение об ошибке при попытке скопировать файл или что-то еще, что я пытаюсь сделать с ним. Однако я могу использовать почти идентичный код для удаления файла.Возможность удалять файлы, Невозможно скопировать или изменить их - PHP

$file = "img1.jpg"; 

if (!copy($file, "img2.jpg")) { 
    echo ("Error copying $file"); 
} else { 
    echo ("Copied $file"); 
} 

Удалить Код:

if (!unlink($file)) { 
    echo ("Error deleting $file"); 
} else { 
    echo ("Deleted $file"); 
} 

Кто знает, почему это может делать это?

Edit: Apache владеет файлы, но, кажется, не умеет читать и писать их в is_readable и is_writeable

Edit2: добавлен второй аргумент кода копирования. Это не проблема, только я делаю ошибки в публикации этого вопроса.

+0

копия с ..... ** до ** –

ответ

0
$file = "img1.jpg"; 
$newFile = "img1_copy.jpg"; 

if (!copy($file, $newFile)) { 
    echo ("Error copying $file"); 
} else { 
    echo ("Copied $file"); 
} 

http://php.net/manual/en/function.copy.php

copy() Функция требует 2 аргумента.

+0

Ошибка при написании вопроса, а не ошибка, которую я испытывал –

+0

'Получаю ошибку при попытке скопировать файл. Что это? Скопируйте весь файл '.php' вместо фрагментов, чтобы мы могли помочь вам. – TheWorstOne

+0

Единственный другой способ, которым могут возникнуть проблемы, - это если разрешения для каталога установлены неправильно. Убедитесь, что в папках имеется 777 разрешений. – TheWorstOne

0

Изменение всех разрешений вручную для каждого файла, так что им принадлежат www-данные, и www-data (группа) могут читать и писать на него. Apache сделал что-то странное, и, хотя пользователь Apache принадлежал и мог читать и записывать в файл, групповые www-данные тоже не могли.