Невозможно создать файл - PullRequest
0 голосов
/ 30 октября 2011

Я пытаюсь создать файл с помощью php в каталог, который имеет cmod 0777, поэтому все должно быть в порядке.

Вот код:

$fh = fopen("/_myfiles/myfile.txt", "w+");

if ($fh==false)
{
    die("unable to create file");
}

Но все, что я получаю, это"unable to create file".Любые идеи о том, что это может быть?

Примечание: Для пути, который я также пробовал:

$fh = fopen($_SERVER['DOCUMENT_ROOT']."/_myfiles/myfile.txt", "w+");

безуспешно.

Ответы [ 3 ]

8 голосов
/ 30 октября 2011

fopen() генерирует сообщение E_WARNING при ошибке.

Я рекомендую использовать error_reporting(E_ALL) для отображения предупрежденияэто должно помочь вам устранить проблему оттуда.

2 голосов
/ 30 октября 2011

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

Также должен существовать каталог "_myfiles" (он не будет создан автоматически).

Если они верны, то это создаст файл в том же каталоге, где расположен скрипт PHP:

$basedir = dirname(__FILE__);
$fh = fopen($basedir . DIRECTORY_SEPARATOR . 'myfile.txt', 'w+');
0 голосов
/ 30 октября 2011

Есть идеи, что бы это могло быть?

NO .
Этот сайт для (хотя и для энтузиастов), но для программистов, а не для некоторых гадалок.

Если вы программист, вы должны спросить вашу программу , что определенно неправильно, а не какие-то смутные идеи .

PHP может сообщить вам причину почти любой ошибки.
Вы просто должны услышать.

Добавьте этот код вверху вашего скрипта и запустите его снова

ini_set('display_errors',1);
error_reporting(E_ALL);
...