Oliver: Gästebuch | Script schreibt 2 mal den eintrag ?

Beitrag lesen

Hallöle,

http://f1web36.frankfurt161.jkserver.info/lupinland/gbook.shtml

Ich hab da ein kleines Gästebuch erstellt. Nur dummerweise liest es die Einträge aus der gaestebuch.txt aus, setzt den neuen Eintrag hinzu und schreibt dann aber 2mal den kompletten Inhalt der gaestebuch.txt.

Anbei mal der Code:

<?php
if ($action == "add"){

if ($name == "" || $mail == "" || $text == ""){
echo "<b>Du hast nicht alle Felder ausgefüllt !</b><br>";
echo "Klicke auf den Backbutton deines Browsers";
}
else{

$fp = fopen("gaestebuch.txt","r+");

$inhalt= fread($fp,filesize("gaestebuch.txt"));

fclose($fp);

if ($www == ""){
$eintrag = "$inhalt<a href="mailto:$mail">$name</a><br>$text";
}
else{
$eintrag = "$inhalt <div class="booktext">Eintrag von: $name<br /><br />Email: <a href="mailto:$mail">$name</a>
<br /><a class="book" href="$www">$www</a><hr class="bookline">$text</div>";
}

$datei = fopen("gaestebuch.txt","a+");
fputs($datei,$eintrag);
fclose($datei);
echo "Danke <i>$name</i> für deinen Eintrag. <a href="gbook.shtml">Hier</a> geht es zurück";
}
}
else{
?>
<?php
include("gaestebuch.txt");
?>
<div style="margin-top:20px; border:0px solid #0000E1">
<b>Eintragen in mein Gästebuch</b><br>
<form action="eintragen.php?action=add" method="post">
<table>
<tr>
<td class="booktable">Dein Name:</td>
<td class="booktable"><input type="text" name="name" size="24"></td>
</tr>
<tr>
<td class="booktable">E-Mail:</td>
<td class="booktable"><input type="text" name="mail" size="24"></td>
</tr>
<tr>
<td class="booktable">Homepage:<td class="booktable"><input type="text" name="www" size="24" value="http://"></td>
</tr>
<tr>
<td class="booktable" colspan="2">Dein Eintrag:<br>
<textarea name="text" cols="35" rows="5"></textarea></td>
</tr>
<tr>
<td colspan="2"><input type="submit" value="Abschicken"></td>
</tr>
</table>
</form>
</div>
<?php
}
?>

wat is denn da nu falsch ? es kann doch nur an dem r+ und dem a+ liegen, oder ?

GRüsse
Olli