Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель MySQL 5. Авторы: Кузнецов М.В., Симдянов И.В. Объектно-ориентированное программирование на PHP. Авторы: Кузнецов М.В., Симдянов И.В. C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: Создание файлов и директорий.
 
 автор: yustys   (11.02.2009 в 07:25)   письмо автору
 
 

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

if(mkdir("bd",0777)){echo"<p>Каталог <b>bd</b> успешно создан.<br>";}
else{echo"<span style='color:red'>Каталог <b>bd</b> не создан.</span><br>";}
if(mkdir("bd/antikvariat",0777)){echo"Каталог <b>bd/antikvariat</b> успешно создан.<br>";}
else{echo"<span style='color:red'>Каталог <b>bd/antikvariat</b> не создан.</span><br>";}
if(mkdir("bd/bytovaja_tehnika",0777)){echo"Каталог <b>bd/bytovaja_tehnika</b> успешно создан.<br>";}
else{echo"<span style='color:red'>Каталог <b>bd/bytovaja_tehnika</b> не создан.</span><br>";}
$fh=fopen("m_analizator/bd_java/screen_size.dat","w") or die("<p class=erormessatg>Не могу открыть файл m_analizator/bd_java/screen_size.dat!</p>");
chmod("m_analizator/bd_java/screen_size.dat",0666);
fclose($fh);
if(mkdir("m_analizator/compressor",0777)){echo"Каталог <b>m_analizator/compressor</b> успешно создан.</p>";}
$fh=fopen("m_analizator/compressor/applet.dat","w") or die("<p class=erormessatg>Не могу открыть файл m_analizator/compressor/applet.dat!</p>");
chmod("m_analizator/compressor/applet.dat",0666);
fclose($fh);

и т.д. Но почему-то на сервере он не может создать файлы, хоть на него я и выставил права доступа 777. Подскажите в чем моя ошибка?
Спасибо.

  Ответить  
 
 автор: cheops   (11.02.2009 в 16:06)   письмо автору
 
   для: yustys   (11.02.2009 в 07:25)
 

Ошибки какие-нибудь выводятся (PHP-ошибки) или просто тихо и молча не создаются директории и файлы?

  Ответить  
 
 автор: Slo_Nik   (12.02.2009 в 23:24)   письмо автору
 
   для: yustys   (11.02.2009 в 07:25)
 

это полностью скрипт или его часть?
если полностью, то не понятно как он создаст файл applet.dat?
сначала ты создаёшь директории и они успешно создаются, потом пытаешься открыть файл screen_size.dat и получается предупреждение, что такого файла нет на сервере.
я попробовал запустить твой скрипт и вот что получилось
Каталог bd успешно создан.
Каталог bd/antikvariat успешно создан.
Каталог bd/bytovaja_tehnika успешно создан.

Warning: fopen(m_analizator/bd_java/screen_size.dat) [function.fopen]: failed to open stream: No such file or directory in C:\Sites\home\testing.ua\www\dirrectiry.php on line 21

Не могу открыть файл m_analizator/bd_java/screen_size.dat!

получается что после создания каталогов bd; bd/antikvariat; bd/bytovaja_tehnika ты пытаешься открыть файл screen_size.dat в несуществующей директории, скрипт не находит что открывать и выдаёт об этом сообщение и дальнейшее выполнение скрипта прерывается.
создар руками m_analizator/bd_java/screen_size.dat и всё заработало был создан m_analizator/compressor/applet.dat
в этом случае всё что идёт после
$fh=fopen("m_analizator/bd_java/screen_size.dat","w") or die("<p class=erormessatg>Не могу открыть файл m_analizator/bd_java/screen_size.dat!</p>");

не будет выполнено, так как fopen вернула false, поэтому or die прекращает дальнейшее выполнение скрипта.
надеюсь я тебя правильно понял:)

  Ответить  
 
 автор: Giga   (13.02.2009 в 09:37)   письмо автору
 
   для: yustys   (11.02.2009 в 07:25)
 

Что бы не мучатся с CHMOD в вашем случае лучше взять хостинг под Windows Server

  Ответить  
 
 автор: Loki   (13.02.2009 в 09:40)   письмо автору
 
   для: Giga   (13.02.2009 в 09:37)
 

Дайте угадаю: чтобы не мучится с mysql надо взять mssql, а чтобы не мучится с php надо писать на asp?

  Ответить  
 
 автор: Yustys   (19.02.2009 в 04:07)   письмо автору
 
   для: Loki   (13.02.2009 в 09:40)
 

Попробую еще раз внимательно пересмотреть свой код, может и в правду затупил. Спасибо за помощь.

  Ответить  
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования