Michy: Gästebuch

Beitrag lesen

Guten Abend zusammen
Ich habe ein Gästebuch mit PHP programmiert. Mit einer Text-Datei als Beitragsspeicherung.
Es funktionniert alles schön, nur gibt es da etwas.
Ich möchte, dass die aktuellste Nachricht oben steht. Ich habs mal versucht mit r+ beim öffnen zum schreiben der Text-Datei, aber dabei wird ein Teil der Datei überschrieben.
Ich hab auch schon versucht mit Arrays beim auslesen der Datei, was auch nicht funktionniert hat.

Vielen Dank für eure Hilfe

Gruss aus Winterthur(CH) Michy

Hier das auslesen mittels Arrays:

Zu beachten ist, ein Beitrag benötigt 7 Zeilen und da ich am Schluss der Nachrichten anfangen will fange ich mit ausgeben mittels $array_a zu hinterst an.
Falls jemand den Link möchte, notiere ich ihn gerne ins Forum.

$B1 = fopen("gb.txt","r");
$array_a=0;/*Start-Arraywert*/
while(!feof($B1)){
$Email = fgets($B1);
$Name = fgets($B1);
$Vorname = fgets($B1);
$Wann = fgets($B1);
$Webseite = fgets($B1);
$Wohnort = fgets($B1);
$Kommentar = fgets($B1);

$Beitrag=array($Email,$Name,$Vorname,$Wann,$Webseite,$Wohnort,$Kommentar);/*Zeilen in Arrays*/
$array_a++;
}
$schreiben=1;/*Variable zum auslesen der Beitraege. Startwert 1, damit while schleife gestartet wird*/
while($schreiben!=0){
$schreiben=$array_a-7;/* zu erstem der 7 Arrays des Beitrages */
$Webseite_ja=$Beitrag[$schreiben+4];/* Webseite-Arrays ausfindig machen */
if($Webseite_ja!="1"){ /*überprüfen, ob eine Webseite angegeben ist. */
print(
"
<tr><td><hr size='1'></td></tr>
<!-- #############Beitrag############# -->
<tr><td>von <a href='mailto:".$Beitrag[$schreiben]."'>".$Beitrag[$schreiben+1]." ".$Beitrag[$schreiben+2]."</a> am ".$Beitrag[$schreiben+3]."</td></tr>
<tr><td>Homepage: <a href='".$Beitrag[$schreiben+4]."' target='_blank'>".$Beitrag[$schreiben+5]."</a></td></tr>
<tr><td>Wohnort: ".$Beitrag[$schreiben+6]."</td></tr>
<tr><td><br></td></tr>
<tr><td>".$Beitrag[$schreiben+7]."</td></tr>
<tr><td><br></td></tr>
<!-- #############ENDE Beitrag############# -->"
);
}
else
{
print(
"
<tr><td><hr size='1'></td></tr>
<!-- #############Beitrag############# -->
<tr><td>von <a href='mailto:".$Beitrag[$schreiben+1]."'>".$Beitrag[$schreiben+2]." ".$Beitrag[$schreiben+3]."</a> am ".$Beitrag[$schreiben+4]."</td></tr>
<tr><td>Homepage: [keine Angabe]</td></tr>
<tr><td>Wohnort: ".$Beitrag[$schreiben+6]."</td></tr>
<tr><td><br></td></tr>
<tr><td>".$Beitrag[$schreiben+7]."</td></tr>
<tr><td><br></td></tr>
<!-- #############ENDE Beitrag############# -->"
);
}
$schreiben=$array_a-7;
 }

fclose($B1);