Как считать данные из файла начиная с конца? Или как добавлять данные в файл вначало?
Делаю гостевую книгу (простенькую без смайлов и выделений цветом). Записываю данные, которые воодят в форму, в файл (добавляется запись вконец), а потом считываю из файла (начиная сначала файла) и вывожу в браузер. Получается что новые записи вконце, а нужно чтоб были вначале. Как это можно сделать?
Вот мой код:
форма: файл gostevaya_kniga.html
<form action="gostevaya_mail.php" method="POST" style="margin-top:-12px;">
<p class="main">Имя: <input type="text" name="imya" size="39"> </p>
<p class="main">E-mail: <input type="text" name="mail" size="39"></p>
<div style="color:#cccc99; font:normal normal normal 18px Times New Roman ; position:relative; left:-152px; top:45px;">Текст:</div> <p style="position:relative; left:47px; top:-40px;"><textarea name="text" rows="10" cols="30" ></textarea> </p>
<div style="position:relative; left:0px; top:-40px;"><input type="submit" value="Добавить"> <input type="reset" value="Очистить"></div>
</form>
и файл gostevaya_mail.php , который выводит данные, записывает и отправляет на емеил:
[PHP]
<?php
if ($_POST['imya']==null and $_POST['mail']==null and $_POST['text']==null)
{
echo "<br><br>";
$file=fopen("kniga.txt", "r");
while (!feof($file))
{
$str_read=fgets($file, 2000);
echo $str_read."<br>";
}
fclose($file);
}
else if ($_POST['imya']!=null and $_POST['text']!=null)
{
$toaddress="kovtun-84@mail.ru";
$tema="Сообщение с сайта Camelia - Гостевая книга";
$str="Имя: ".$_POST['imya']."<br>\n"."e-mail: ".$_POST['mail']."<br>\n"."Текст: ".$_POST['text']."<br>\n" ;
$headers = "Content-type: text/html; charset=windows-1251 \r\n";
$headers .= "From: Alexandr Bulgakov <la-vitre@yandex.ru>\r\n";
$headers .= "Bcc: Margarita Kovtun <kovtun-84@mail.ru>\r\n";
mail($toaddress, $tema, $str, $headers);
echo "<br><br>";
$file=fopen("kniga.txt", "a");
$str_file= $_POST['imya']."\n".$_POST['text']."\n"."<br>\n";
fwrite($file, $str_file);
fclose($file);
$file=fopen("kniga.txt", "r");
while (!feof($file))
{
$str_read=fgets($file, 2000);
echo $str_read."<br>";
}
fclose($file);
}
else if ($_POST['imya']==null )
{
echo "<br><p>Не заполнено поле имя. </p>";
$file=fopen("kniga.txt", "r");
while (!feof($file))
{
$str_read=fgets($file, 2000);
echo $str_read."<br>";
}
fclose($file);
}
else if ($_POST['text']==null )
{
echo "<br><p>Не заполнено поле текст. </p>";
$file=fopen("kniga.txt", "r");
while (!feof($file))
{
$str_read=fgets($file, 2000);
echo $str_read."<br>";
}
fclose($file);
}
?>
[/PHP]