Короче моими усилиями было написано следующее, как мне кажется логично, но в самом конце не происходит запись нового массива в файл - пишет следующее: Array to string conversion in (строчка тут такая: fwrite($fp, $new_array)
Ну а вот сам CODE:<?php
//короткие имена переменных
$DOCUMENT_ROOT=$HTTP_SERVER_VARS['DOCUMENT_ROOT'];
$text = trim($HTTP_POST_VARS['text']);
if (empty ($text))
{
echo '<p style="color:#f00">Новость не может быть добавлена, так как Вы ничего не написали.<BR>Пожалуйста, введите текст новости.</p><p><a href="javascript:history.back(1)" title="вернуться к форме добавления новости">вернуться</a></p>';
exit;
}
$text = htmlspecialchars(stripslashes($text)); // запрет использования html
echo '<p><b>Новость:</b><p>';
echo nl2br($text);
echo '<p><b>Размещена на сайте в</b> ';
echo date('d.m.Y');
$text = str_replace("\n","\\n", $text);
$line = file("$DOCUMENT_ROOT/new/news.txt");
$number_news = count($line);
if ( $number_news < 4)
{
$fp = @fopen("$DOCUMENT_ROOT/new/news.txt", 'a');
$new_text = "<img src='img/news.gif' class='img_news'> <strong>".date('d.m.Y').
"</strong> ".$text."</br>\n";
flock ($fp, LOCK_EX); // блокирование файла для записи
fwrite($fp, $new_text);
flock ($fp, LOCK_UN); //снятие блокировки на запись
fclose($fp);
}
if ( $number_news == 4)
{
$new_text = "<img src='img/news.gif' class='img_news'> <strong>".date('d.m.Y')."</strong> ".$text."</br>\n";
array_splice($line, 0, 1, $new_text);
print ($line);
$fp = fopen("$DOCUMENT_ROOT/new/news.txt", 'w');
flock ($fp, LOCK_EX); // блокирование файла для записи
fwrite($fp, $line);
flock ($fp, LOCK_UN); //снятие блокировки на запись
fclose($fp);
}
?>
Как решить проблемку не знаю - с массивами работаю первый раз. Уже пол дня бьюсь.
Вместо записи всего нового массива в файл записывает (Array). |