|
|
|
| Как мне казалось, задать права доступа к файлу на уровне 0777 можно в любом месте скрипта. И если такие права нужны, то лучше задать их сразу, как только сформировался соответствующий файл. Поэтому я пишу:
$file = fopen ("data/name-rss.txt", "w") ; // Создание нового пустого файла (или очистка).
chmod("data/name-rss.txt", 0777); // Устанавливаем права доступа 0777
fputs ($file, $name_rss) ; // Запись
fclose ($file) ; // Закрытие файла
|
Но при исполнении получаю сообщения по это и всем аналогичным операциям:
Warning: chmod() [function.chmod]: Operation not permitted in admm-1.php on line 66
Строка 66 - это есть chmod
Что же здесь не так? | |
|
|
|
|
|
|
|
для: Владимир55
(07.06.2007 в 16:39)
| | попробуйте chmod поставить после fclose | |
|
|
|
|
|
|
|
для: Владимир55
(07.06.2007 в 16:39)
| | А где Вы создаете файл права на директорию какие? | |
|
|
|
|
|
|
|
для: Faraon
(07.06.2007 в 16:52)
| | Права на директории, в которых имеется указанный фрагмент, 0777.
А самое удивительно - ошибка "дышит"! То она есть, то её нет. В скрипте около десятка php-файлов, и он не вполне настроен, так что сама по себе какая-нибудь блуждающая ошибка не вызывала бы особого удивления, но она проявляется только в этой "безобидной" операции chmod, причем только в приведенном фрагменте создания/очистки файла.
Нет ли какой-нибудь расшифровки: в каких случаях запрещен chmod ? | |
|
|
|
|
|
|
|
для: Владимир55
(07.06.2007 в 17:15)
| | Так если у Вас права на директорию data стоят 777 то и файлы находящиеся в ней тоже будут с правами 777, если Вы конечно на некоторые файлы не поставите другие права, и ругаться может из-за того что Вы как бы два раза задаете одни и теже права. Просто уберите chmod | |
|
|
|
|
|
|
|
для: Faraon
(07.06.2007 в 17:25)
| | >Так если у Вас права на директорию data стоят 777 то и файлы находящиеся в ней тоже будут с правами 777, если Вы конечно на некоторые файлы не поставите другие права, и ругаться может из-за того что Вы как бы два раза задаете одни и теже права.
Это еще почему? | |
|
|
|
|
|
|
|
для: Trianon
(08.06.2007 в 10:46)
| | Ошибся! У меня уже от работы плющит :))) | |
|
|
|
|
|
|
|
для: Владимир55
(07.06.2007 в 17:15)
| | Скажите, зачем Вы пытаетесь изменить права файлу во время работы с ним? Почему не до открытия, не после? | |
|
|
|
|
|
|
|
для: Владимир55
(07.06.2007 в 16:39)
| | А самое удивительно - ошибка "дышит"! То она есть, то её нет.
$file = fopen ("data/name-rss.txt", "w") ; // Создание нового пустого файла (или очистка).
Когда создается файл, то права на него не нужны, когда очистка - нужны (а их в этот момент нет) и может по этому кажется, что ошибка "дышит". | |
|
|
|
|
|
|
|
для: Yuriev
(07.06.2007 в 23:31)
| | Вот это очень похоже!
Часть операторов убрал, а другие перестали выдавать ошибки. Скрипт словно "притерся", приработался. | |
|
|
|
|
|
|
|
для: Yuriev
(07.06.2007 в 23:31)
| | Полнейшая глупость.
У меня еще один вопрос - зачем Вы вообще хотите менять права? | |
|
|
|
|
|
|
|
для: Unkind
(08.06.2007 в 02:35)
| | Алгоритм такой.
В одном скрипте:
- первоначальное создание файла (w);
- установка прав доступа к созданному файлу 0777 (сейчас пока что так);
- записываю в созданный файл информацию;
- закрываю файл.
В другом скрипте:
- считывание информации из файла;
В третьем скрипте:
- открытие файла в режиме (w), т.е. очистка;
- записываю в этот файл информацию;
- закрываю файл.
Перенести установку прав доступа в строку, следующую за закрытием файла? Или что? | |
|
|
|
|
|
|
|
для: Владимир55
(08.06.2007 в 10:43)
| | Еще раз: зачем Вы вообще устанавливаете права файлу? | |
|
|
|
|
|
|
|
для: Unkind
(08.06.2007 в 11:25)
| | Ну наверное для того, чтобы изменять файл скриптом. А разве на файл не 666 надо писать?? | |
|
|
|
|
|
|
|
для: coloboc66
(08.06.2007 в 12:13)
| | Ну наверное для того, чтобы изменять файл скриптом.
А без этого он не смог что ли создать файл ($file = fopen ("data/name-rss.txt", "w"))? Смог.
Вы делаете какие-то действия не задумываясь зачем. | |
|
|
|
|
|
|
|
для: Unkind
(08.06.2007 в 12:36)
| | Я был неправ.
В одном из постов я когда-то нашел высказывание, и занес его в свой блокнотик как руководство к действиям, а это оказалось неверным. Теперь я понял, что установление прав доступа в моем случае ненужно.
Спасибо, Unkind, что "достучались" до меня! | |
|
|
|