|
|
|
| Делаю сайт на файлах. Сайт сложный, очень много директорий и файлов - будет сложно выставлять права доступа. Поэтому я захотел создать файл - при запуске которого на сервере будут создаваться все нужные директории и файлы. Сделал я такой файл - вот его код:
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. Подскажите в чем моя ошибка?
Спасибо. | |
|
|
|
|
|
|
|
для: yustys
(11.02.2009 в 07:25)
| | Ошибки какие-нибудь выводятся (PHP-ошибки) или просто тихо и молча не создаются директории и файлы? | |
|
|
|
|
|
|
|
для: 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 прекращает дальнейшее выполнение скрипта.
надеюсь я тебя правильно понял:) | |
|
|
|
|
|
|
|
для: yustys
(11.02.2009 в 07:25)
| | Что бы не мучатся с CHMOD в вашем случае лучше взять хостинг под Windows Server | |
|
|
|
|
|
|
|
для: Giga
(13.02.2009 в 09:37)
| | Дайте угадаю: чтобы не мучится с mysql надо взять mssql, а чтобы не мучится с php надо писать на asp? | |
|
|
|
|
|
|
|
для: Loki
(13.02.2009 в 09:40)
| | Попробую еще раз внимательно пересмотреть свой код, может и в правду затупил. Спасибо за помощь. | |
|
|
|