PDA

Просмотр полной версии : На хосте неработает запись?


ВАРАН
23.08.2004, 18:58
пишу на локальном компе с запущенным апачи такой срипт

$file = fopen("каталог/$newName.txt/", "w+");
fwrite($file,"некий текст");
fclose($file);

всё работает
Выкладываю его на сайт, но файл не добавляется.

Тогда пишу так

$file = fopen("ftp://юзер:пароль@ftp.такойто.ru/такойто.ru/www/каталог/$newName.txt/", "w+");
fwrite($file,"некий текст");
fclose($file);

С локального компа на сайте файлы добавляются,а с самого сайта опять не работаю.
Дык в чём же тут загвоздь? :confused:

Самурай
23.08.2004, 19:07
загвоздь тут в правах доступа на файл.

ртфм - chmod

ВАРАН
23.08.2004, 20:34
Шо це токе?

WebMan(MS)
24.08.2004, 14:07
в shell команда на текстовый
chmod 777 имя_файла
на скрипт 644

nagash
24.08.2004, 14:15
Оригинал написал(а) WebMan(MS)
в shell команда на текстовый
chmod 777 имя_файла
на скрипт 644
что за бред? =)
зачем на текстовый фаил 777 а на скрипт 644?
ты хоть понимаешь что эти циферки означают? или тебе кто-то где-то когда-то сказал и ты теперь чушь несёшь в массы?

ВАРАН
24.08.2004, 15:51
Да... массы возмущены...
Однако по прежнему не могу справиться с задачкой.Чувствую что это как-то просто решаеться,но как?Другие же делают...

ermol
24.08.2004, 15:57
nagash, а как же тогда? по-моему только на скрипт нужно права выставить. я когда-то делал давно, только вот не помню какие цифры. напомнишь ?

nagash
24.08.2004, 21:16
Оригинал написал(а) ermol
nagash, а как же тогда? по-моему только на скрипт нужно права выставить. я когда-то делал давно, только вот не помню какие цифры. напомнишь ?
1(x) - выполняемый
2(w) - запись
4(r) - чтение
при сложении этих циферок получаются заветные 644 \ 777 и т.п.
первая цифра - owner
вторая цифра - группа
третья цифра - все остальные
итак по поводу циферов...
7 = 1 + 2 + 4 == выполняемый \ можно записывать \ можно читать
зачем скажите мне тектовому файлу быть исполняемому?
далее...
на счёт прав только на скрипты...
это да... но только на cgi скрипты, чтобы они были выполняемыми...
если пхп стоит как модуль, тогда ему НЕНАДО быть выполняемым... он просто отдаётся модулю апача... и абсолютно наплевать какой он... исполняемый или нет, главное чтобы апач мог его прочитать...
значит 4 - достаточно...

в данном варианте для записи будет достаточно 666...

и последнее... кажется создатель данного треда не знает как это делать -- у каждого фтп клиента есть возможность выставлять chmod
для примера у НЕ руссифицированного тотал командера
files -> change attributes
в других клиентах это называется по другому и лежит в разных пунктах меню... но есть всегда...

следовательно как минимум создателю данного треда надо сказать какой фтп клиент он использует, и если кто-то из присутствующих знает ГДЕ данный пункт меню, ему обязательно помогут...
ну или самому порыться...
найти довольно просто ИМХО =)

ВАРАН
24.08.2004, 22:53
мама ради меня обратно....
Я пользую windows Commander 4.54 не русофицированный. Я так понял что при заливке php файла который делает запись нужно что то включить в фтп клиенте?
========================================

Я нашёл таблицу change attributes.Там три столбца.Овнер групп и ворлд.В каждом по три чекбокса:реад,врайт,екзекут.Это то самое оно?

WebMan(MS)
25.08.2004, 00:19
Оригинал написал(а) nagash

что за бред? =)
зачем на текстовый фаил 777 а на скрипт 644?
ты хоть понимаешь что эти циферки означают? или тебе кто-то где-то когда-то сказал и ты теперь чушь несёшь в массы?
не умничай, полазь по хостам и посмотри какие атрибуты чаще всего выставляют на пхп скрипты, ну пусть будет 666 на текст

nagash
25.08.2004, 01:03
Оригинал написал(а) WebMan(MS)

не умничай, полазь по хостам и посмотри какие атрибуты чаще всего выставляют на пхп скрипты, ну пусть будет 666 на текст
зачем мне лазать по хостам, чтобы посмотреть, что там выставлено? если я, в отличии от тебя, знаю что эти циферки значат, и знаю какие мне в данном контексте нужны циферки...
так что можно я не буду терять время, и НЕ буду "лазать по хостам".
хорошо?

Crazy
25.08.2004, 01:39
Оригинал написал(а) WebMan(MS)
не умничай, полазь по хостам и посмотри какие атрибуты чаще всего выставляют на пхп скрипты

Глыба. Матерый человечище. Невольно вспоминается старый анекдот:

Вечерний Питер. Интеллигент осторожно пробирается по темной улице. В сторонке стоит бомж и неспешно отливает в кусты.

- Простите, Вы не подскажете, как пройти к Эрмитажу?
- Нахер тебе Эрмитаж? Ссы здесь!

Спасибо тебе, дорогой товарищь WebMan(MS) за ценный совет и жизненное наставление. Пусть чаще и в твоей жизни встречаются такие советы.

ВАРАН
25.08.2004, 14:08
Ну а я как бы уже не причём...Можект хоть ктонибудь скажет что мне то делать теперь?

styx
25.08.2004, 14:18
Ну а я как бы уже не причём...Можект хоть ктонибудь скажет что мне то делать теперь?
Право на запись надо дать всем, только не на .php, который пишет, а на тот файл, в который Вы собираетесь писать.

ВАРАН
25.08.2004, 14:53
Дык ведь дело в том что я не собираюсь писать в файл,я его просто создаю (пишу в пустой какбы) и потом просто удаляю.Какже менять права у файла которого нет?Неужели никто ничего подобного не делал?Я уже перепробовал вё что только можно.

Fyn
25.08.2004, 15:07
Ой мама...
Что ж ты так???

$file = fopen("каталог/$newName.txt", "w+");
chmod("каталог/$newName.txt", права_доступа);
fwrite($file,"некий текст");
fclose($file);

ВАРАН
25.08.2004, 15:14
Двойка вам всем :D
Всё оказалось гораздо проще!
Без всяких там chmode.Просто у дериктории, в которую я писал файлы, небыл поставлен флажок врайт.Мда...ну и мне тоже двойку за это.Однако всем спасибо...

Самурай
25.08.2004, 16:22
эх. попривыкали в ГУИ инрефейсам...

то что ты назвал флажек поставить, оно и было.

nagash
25.08.2004, 22:46
мдя...