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

Форум PHP

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

 

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

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

тема: Не создает файл!
 
 автор: Freddie_X   (10.08.2006 в 12:56)   письмо автору
 
 

Помогите, у меня проблема. Вот с помощью этого кода я пытаюсь создать файл:
<?php
$str = "comments/ffff.txt";
$fp = fopen($str, "w");
fclose($fp);
if ($fp=true) chmod($str, 0777);
?>
Но в директории "comments" создается файл ".txt", т.е. совсем без имени. А атрибуты доступа вместо 777, остаются стандартными - 664. =(
Права доступа директории "comments" - 777.
В чем может быть проблема?

   
 
 автор: ec_stasis   (10.08.2006 в 15:23)   письмо автору
 
   для: Freddie_X   (10.08.2006 в 12:56)
 


<?
...
//nado ne odno '=' a dva - ina4e ti nikogda ne uznaesh, esli funkcija vernet false
if ($fp==truechmod($str0777);

А как решить проблему - не знаю :)))

   
 
 автор: cheops   (10.08.2006 в 17:52)   письмо автору
 
   для: Freddie_X   (10.08.2006 в 12:56)
 

Любопытно... то, что атрибуты не меняются - это нормально, файла такого просто нет и изменить атрибуты нельзя, кроме того строка
<?php
if ($fp=true)
?>

мало того не правильная, она лишняя, файл у вас всё равно закрыт и дескриптор не имеет силы. У вас скрипт точно так выглядит или вы его перед помещением в форум урезали (просто негде ему изменить имя файла)?

   
 
 автор: [ENgel]   (10.01.2007 в 00:33)   письмо автору
 
   для: Freddie_X   (10.08.2006 в 12:56)
 


<?php
$str  
=  "comments/ffff.txt";
$fp  =  fopen($str"w");
if (
$fp  == truechmod($str0777);
fclose($fp);
?>

Нужно == а не =

   
 
 автор: A!EX   (10.01.2007 в 01:15)   письмо автору
 
   для: Freddie_X   (10.08.2006 в 12:56)
 

><?php
>$str = "comments/ffff.txt";
>$fp = fopen($str, "w");
>fclose($fp);
>if ($fp=true) chmod($str, 0777);
>?>

Посмтрев и увидив на сие чуто могу сказать первое надо a или a+, второй вопрос зачем нужно права на файл ставить 777 если досточно в лучшем случае 666 а так вообщем код выглядеть должен примерно так

<?php
$str = "comments/ffff.txt";
$fp = fopen($str, "a+");
chmod($str, 0666);
fclose($fp);
?>

   
 
 автор: Trianon   (10.01.2007 в 09:17)   письмо автору
 
   для: A!EX   (10.01.2007 в 01:15)
 

>могу сказать первое надо a или a+,

Почему?

   
 
 автор: A!EX   (10.01.2007 в 23:32)   письмо автору
 
   для: Trianon   (10.01.2007 в 09:17)
 

так как они равнозначны практически .т.е. и а и а+ в данном скрипте значения не имеет и так и так все будет работать

   
 
 автор: Trianon   (11.01.2007 в 00:00)   письмо автору
 
   для: A!EX   (10.01.2007 в 23:32)
 

Я не спросил, чем a отличается от a+. Чем они друг от друга отличаются, я знаю лет 20 уже.
Я попросил аргументировать утверждение (ошибочное) , что нужно применять a вместо w.

   
Rambler's Top100
вверх

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