Hallo,
Ich habe mit einem Freund für unsere Seite ein Gästebuchscript entworfen.
Gab zwar ab und zu Probleme, hat aber schließlich doch geklappt.
Später haben wir es umfunktioniert in eine News-Poster. Also, Man kann jetzt über ein Form, News schreiben, diese werden gespeichert in einer TXT und anschließend wird diese TXT in die News-Seite Includiert.
Mein Problem ist das:
Zuerst hat das script neue news immer hinten angehängt in der TXT,
dann hat mir jemand gesagt, ich solle bei $datei = fopen("gaestebuch.txt", "r+"); statt dem "a" was vorher war einfach "r+" einfügen.
So, das hab ich gemacht, doch nun überschreibt das script immer den vorherigen Beitrag. Was ich gerne hätte wäre, dass Neue Beiträge immer ganz nach oben in die TXT kommen. Wie mach ich das jetzt? Warum wird der Beitrag immer ersetzt?
Hier mal mein ganzes script (Ohne Formular. Das ist in einer html datei)
____________________________________
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
<title>News</title>
</head>
<body>
<?php
$user = $_POST["Name"];
$user = htmlentities($user);
$inhalt = $_POST["inhalt"];
$inhalt = htmlentities($inhalt);
$inhalt = str_replace("\n", "<br>", $inhalt);
$email = $_POST["EMail"];
$email = htmlentities($email);
if ($inhalt == "" or $user == "")
{
echo "Sie müssen das Feld "Namen"
und "Inhalt" ausfüllen";
}
else
{
$datum= date("d.m.Y H:i:s");
$eintrag=
"<div class="post">
<h1 class="title">$user</h1>
<p class="byline"><small>$datum</small></p>
<div class="entry">
<p><strong>$inhalt</strong></p>
</div>
</div>";
$datei = fopen("gaestebuch.txt", "r+");
fwrite($datei, "\n".$eintrag);
fclose($datei);
echo "Ihr Eintrag wurde erfolgreich gespeicherty<br> <a href="../acp/Subrosa4Life.html">Back</a>";
}
?>
</div>
</body>
</html>
____________________________________