PHP Как добавлять строку в начало файла не теряя данных. @ DeForum.ru
DeДверь  
Логин:  
Пароль:  
  Автологин  
   
Разместить рекламу
Письмо админу
Правила | FAQ | *Поиск | Наша команда | Регистрация | Вход
 
 
 Страница 1 из 1 [ Сообщений: 6 ] 
*   Список форумов / Начинка и техника / Программирование для WWW » ответить » создать топик « | »
Автор Сообщение
NetSkyer Муж.
новый человек
5
Сообщения: 20
Зарегистрирован: 17.04.09
Заголовок сообщения: PHP Как добавлять строку в начало файла не теряя данных.
Сообщение Добавлено: 6 Май 2009, 17:54:47 
Есть файл file.txt который содержит запись типа:
Код:
<h2>222</h2><p>222</p>
<h2>111</h2><p>111</p>


Требуется дописать строку <p>333</p> но не в конец файла и не вместо текущих записей, а перед <p>222</p>, чтоб получилось так:
Код:
<h2>333</h2><p>333</p>
<h2>222</h2><p>222</p>
<h2>111</h2><p>111</p>


Вот мой код, но он тупо переписывает начало первой строчки.

Код:
<?php
$_POST['data'] =  substr(htmlspecialchars(trim($_POST['data'])), 0, 20);
$_POST['news'] =  substr(htmlspecialchars(trim($_POST['news'])), 0, 180);
$file = fopen('news.txt','r+');
  if(!$file)
    {
      echo('Ошибка открытия файла');
    }
$str = "<h2>".$_POST['data']."</h2><p>".$_POST['news']."</p>";
  if ( !$file )
  {
    echo('Ошибка открытия файла');
  }
  else
  {
    fwrite ( $file, $str );
  }
  fclose ($file);
?>


Помогите плиз?
Crazy Муж.
Модератор
107
Сообщения: 14561
Зарегистрирован: 23.12.01
Откуда: Moscow
Сообщение Добавлено: 6 Май 2009, 22:15:31 
Прямое решение:

1. Прочесть старое содержимое.
2. Записать новое начало
3. Дописать старое содержимое

Правильный ответ: прекратить заниматься интеллектуальной мастурбацией и прочитать книжки про разработку веб-приложений. Книжки находятся в книжных магазинах. О местонахождении книжных магазинов можно узнать на ближайшей остановке общественного транспорта у прохожих.
Don Julio Муж.
постоянный участник
77
Сообщения: 3562
Зарегистрирован: 02.08.02
Откуда: Пустота
Сообщение Добавлено: 6 Май 2009, 22:51:38 
Я уже некоторое время что называется "не в теме" (хотя и не был там толком), но разве \n положения не исправит?

_________________
Не бойтесь.
Crazy Муж.
Модератор
107
Сообщения: 14561
Зарегистрирован: 23.12.01
Откуда: Moscow
Сообщение Добавлено: 7 Май 2009, 01:28:11 
Don Julio, ты прав. Когда пишешь про некоторое время.
AlexShop Муж.
участник
34
Сообщения: 1866
Зарегистрирован: 17.02.04
Сообщение Добавлено: 7 Май 2009, 01:36:47 
упс

_________________
Тот, кто задает вопрос, глупец в течение пяти минут, тот, кто его не задает, глупец всю свою жизнь. (Китайская поговорка)
Don Julio Муж.
постоянный участник
77
Сообщения: 3562
Зарегистрирован: 02.08.02
Откуда: Пустота
Сообщение Добавлено: 7 Май 2009, 19:20:30 
Crazy, вы меня переоцениваете.

_________________
Не бойтесь.
*   Список форумов / Начинка и техника / Программирование для WWW « | » » ответить » создать топик
 Страница 1 из 1 [ Сообщений: 6 ] 
Показать сообщения за:   Поле сортировки  
Найти:
Перейти:  
Уровень доступа: Вы не можете начинать темы. Вы не можете отвечать на сообщения. Вы не можете редактировать свои сообщения. Вы не можете удалять свои сообщения. Вы не можете добавлять вложения.
cron


ООО ДеФорум
При использовании материалов сайта ссылка на DeForum.ru — обязательна.
Проект Павла Батурина ©2001-2077; // Powered by phpBB © 2013 phpBB Group
Rambler's Top100