RuWeb.net Forum

Создание файлов в скрипте
Anonymous - 9.1.2006 в 23:48

Добрый день. У меня возникла проблема с созданием файла с помощью скрипта. По умолчанию права на каждый файл запрещают его редактирование и т.д. и просто так скриптом его не создашь, да и chmod не получается использовать, т.к. самого файла еще не существует. Подскажите, пожалуйста, каким образом можно с помощью скрипта просто создать файл и его отредактировать?


Lyceum - 10.1.2006 в 03:52

Цитата:
баг
http://bugs.php.net/bug.php?id=35060
вобщем пока файл придется создавать предварительно
например функцией
touch('filename';);

http://ru2.php.net/touch
Тут была про это тема.


Anonymous - 10.1.2006 в 12:35

Можно сформулировать этот вопрос по-другому : как в DirectAdmin изначально поставить права на запись всех файлов в отдельной папке, которые там будут создаваться.

P.S. : Функция touch() не помогает, т.к. нет прав для создания файла. А изменить скриптом права можно только уже существующего файла. Получается замкнутый круг.


kpv - 10.1.2006 в 12:48

Цитата:
сообщение Anonymous
т.к. нет прав для создания файла.

с этого надо начинать. на каталог необходимо назначить такие права, чтобы файлы можно было создавать.


Anonymous - 11.1.2006 в 18:58

Цитата:
сообщение kpv
Цитата:
сообщение Anonymous
т.к. нет прав для создания файла.

с этого надо начинать. на каталог необходимо назначить такие права, чтобы файлы можно было создавать.

Спасибо большое. Я просто перепутал : на файлы чем больше число, тем меньше прав, а на папки наоборот :)


kpv - 11.1.2006 в 20:54

первая цифра - права доступа владельца
вторая цифра - права доступа группы
третья цифра - права доступа всех остальных

число переводите в двоичный вид
каждый бит в позиции определяет действие с файлом
rwx
r - чтение
w - можно модифицировать, удалять или переименовывать
x - запуск

таким образом
0 (---) - все запрещено
1 (--x) - запуск
2 (-w-) - запись
3 (-wx) - запуск+запись
4 (r--) - чтение
5 (r-x) - чтение + запуск
6 (rw-) - чтение +запись
7 (rwx) - полные права

это для файлов, для каталогов все тоже самое, но только бит x (eXecute) используется для указания разрешено ли искать файлы в каталоге.

поэтому больше число или меньше - не имеет значения, с этим связи никакой нет - всё определяет значение бита в соответствующей позиции.