Не запись в файл, но без ошибок PHP - PullRequest
0 голосов
/ 14 января 2010

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

Я повторил входные значения непосредственно перед попыткой записи, чтобы убедиться, что они не пусты.

Текстовый файл находится в том же каталоге, что и файл php.

Первоначально я получил ошибку «Предупреждение: fwrite (): предоставленный аргумент не является допустимым ресурсом потока», но исправил это, изменив разрешения для текстового файла.

Мой текущий код

$fp = fopen('sidebar_subscribers.txt', 'a');
fwrite($fp, $name."\t".$email."\t".$leader."\t".$industry."\t".$country."\t".$zip."\r\n");
fclose($fp);

Почему значения не записываются в текстовый документ?

Есть ли на сервере что-то, что php должен быть настроен для того, что я должен проверить?

Это используется в блоге WordPress.

Спасибо!

****** Проблема решена. Файл создавался и записывался в неправильном месте. Спасибо за вашу помощь и предложения. *******

Ответы [ 2 ]

1 голос
/ 14 января 2010

код как написано у меня работает; Я бы предложил добавить следующее, чтобы определить, где происходит ошибка:

<?php    
  $fp = fopen('sidebar_subscribers.txt', 'a') or die('fopen failed');

  fwrite($fp, "$name\t$email\t$leader\t$industry\t$country\t$zip\r\n") or die('fwrite failed');
?>

Первоначальная ошибка о недопустимом ресурсе потока была результатом отсутствия проверки возвращаемых значений, что, по сути, делает для вас "or die ()". fopen завершился ошибкой и вернул false, а вы передали false в качестве первого аргумента для fwrite.

Вы можете дополнительно проверить ошибки, проверив возвращаемое значение fwrite:

<?php

$ret = fwrite($fp, "$name\t$email\t$leader\t$industry\t$country\t$zip\r\n");

if ($ret === false)
  die("Fwrite failed");
echo ("fwrite wrote $ret bytes");
?>
0 голосов
/ 14 января 2010

Попробуйте fflush($fp) перед закрытием.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...