стереть файл для записи php

программирование windows php скрипт функция

Доброго времени суток!
Собственно, проблема связана с сабжем. Как очистить файл в PHP, не прибегая к его удалению, есть ли такая возможность?
В том скрипте что я привёл ниже есть проблема, а именно: если мы введём 20 символов, то стереть можно только 19 из них, но один символ стереть не получится. Если попытаться удалить все 20 сразу, то не удалится ничего. Как решить данную проблему? Уже сутки ищу решение проблемы. Спасибо.

<?php
$a = @readfile ("txtdatax/cvonline/file.txt");
if (!$a) echo "<center>Пользователь ничего не указал</center>";
else echo $n;
?>
<?php
if($_POST['post']){
$fp=fopen("txtdatax/cvonline/file.txt","w");
fwrite($fp,$_POST['post']);
fclose($fp);
}else{}
?>
<form method=POST>
<textarea cols="75" rows="8" name="post">
<?php
$a = @readfile ("txtdatax/cvonline/file.txt");
if (!$a) echo "Пользователь ничего не указал";
else echo $n;
?>
</textarea>
<br><input type="submit" value="Изменить">
</form>

Примечание:
qlobafftar данная функция не подходит....у меня есть форма записи, а эта функция при каждом обращении обнуляет файл fwrite($fp,''); не зависимо от того, хочу я этого или нет. fflush($fp); - пытался с этой поработать, но к успеху не привело

Примечание:
NetRain (Alexander Borovikov) эта функция обнуляет файл если добавить запись, после чего больше не даёт записать его

Примечание:
проблема решена

<?php
if(isset($_POST['post'])){

if($_POST['post'] == ""){
$input = '';
}else {
$input = $_POST['post'];
}

$fp=fopen("file.txt","w+");
fwrite($fp, $input);
fclose($fp);

}
?>
<form method="post" >
<textarea cols="75" rows="8" name="post">
<?php
$a = readfile ("file.txt");
if (!$a) echo "Пользователь ничего не указал";

?>
</textarea>
<br><input type="submit" value="Изменить">
</form>
Ответы:
$fp=fopen('file.txt','w');
fwrite($fp,'');
fflush($fp); //<---- при записи не забываем
fclose($fp);
файл пустой
file_put_contents($path_to_file, $_POST['post']);
Что значит "не дает больше записать его"? :-) Каким образом она может вас ограничивать? Она просто переписывает все данные файла (если файл уже есть) или создает файл и пишет в него переданные в аргументе данные (если файла нет).
Если у вас потом что-то "не дает больше записать", значит либо вы что-то неправильно делаете, либо у вас косяк с правами доступа (но chmod($filename, $mode) никто не отменял).


13 лет назад

RPI.su - самая большая русскоязычная база вопросов и ответов. Наш проект был реализован как продолжение популярного сервиса otvety.google.ru, который был закрыт и удален 30 апреля 2015 года. Мы решили воскресить полезный сервис Ответы Гугл, чтобы любой человек смог публично узнать ответ на свой вопрос у интернет сообщества.

Все вопросы, добавленные на сайт ответов Google, мы скопировали и сохранили здесь. Имена старых пользователей также отображены в том виде, в котором они существовали ранее. Только нужно заново пройти регистрацию, чтобы иметь возможность задавать вопросы, или отвечать другим.

Чтобы связаться с нами по любому вопросу О САЙТЕ (реклама, сотрудничество, отзыв о сервисе), пишите на почту [email protected]. Только все общие вопросы размещайте на сайте, на них ответ по почте не предоставляется.