Forum Webscript.Ru
Программирование => PHP => Тема начата: Matold от 28 Декабря 2003, 16:21:58
-
Кусочек скрипта для добавления новости:
$news="news.txt";
...
$fp = fopen($news, "r");
$tmp = fgets ($fp, 100);
fclose ($fp);
$fp = fopen($news, "w");
$zapis = "$zapis
$tmp";
$fw = fwrite( $fp, $zapis);
fclose ($fp);
Однако в файл запоминается только одна новость, старые исчезают (а хотел, чтобы дописывалась сверху). Ни как не пойму, в чем ошибка :(((
-
действительно, дурацкая.
ты считываешь из файла только первые сто байт, а потом удивляешься - куда делись все данные?
Луше всего для тебя будет не записывать новость сверху, а добавлять по-человечески, в конец.
Ты же ведь, чтобы выводить, все равно весь файл считываешь?
-
ты считываешь из файла только первые сто байт, а потом удивляешься - куда делись все данные?
Да нет, кол-во байт не играет значения, даже если их 1000 - все равно последняя новость замещает все остальные :(
Луше всего для тебя будет не записывать новость сверху, а добавлять по-человечески, в конец.
Ну вот это то у меня работало, но мне нужно самую свежую новость в начало страницы сайта, а считываться должен весь файл со всеми новостями
-
:rolleyes: Ееех, в ожидании ответа наткнулся на тему "как добавить страку в начало файла". Все, вопрос решен с добавкой новостей :cool:. Но ошибку в моем скрипте тоже хотелось бы узнать :confused:
-
блин.
Ну выведи ты свое tmp хоть на экран!!!!
и убедись!
при чем здесь ЗАТИРАЕТ?
ЧТО ТЫ ЗАПИСЫВАЕШЬ в файл, то в нем и оказывается!
если ты записываешь в файл сначала $zapis, потом
, а потом то, что прочитал в $tmp - то и запишется!
Что здесь для тебя непонятно-то?
считываться должен весь файл
И зачем тогда извращаться с записью в начало файла?
тебя научить, как работать с массивами?