Alex: Gästebuch - Programm

Beitrag lesen

Hallo liebe PHP Profies.
Ich hoffe , dass mir jemand von euch helfen kann.
ich bin ein ziemlicher Anfänger in sachen programmieren, und ich wollte ein Programm erstellen, das mir mein Gästebuch ersetzen koennte.
Mit hilfe dieses Forums habe ich ein halbwegs Funktionierendes programm, aber nur halbwegs.
Der Eintrag zaehlär klappt nicht richtig, und die Eintraege werden nicht gespeichert.
Wenn mal schreibt und Ok drueckt, sieht es aus, als obt alles geklappt hat, aber wenn man nochmal auf die Seite Geht, sind die Einträge nicht mehr da.
Ihr koennt es selbst testen unter
http://mitglied.lycos.de/pandaemonium/

Hier ist der Script. Ich hoffe ihr blickt da durch.

Vielen Dank, Alex

<html>

<style type="text/css">
<!--
.author {  font-size: 10px; font-weight: bold; color: #FFFFFF}
.eintr { color: #DDDDDD }
.text { font-size: 12px }
.extra {font-size:16pt ; font face="Comic Sans MS; color :#00FFF4 }
-->
</style>

<body bgcolor="#FFFFFF">

<font face="Verdana" size="1px" color=#000099>

<?php

$g=file("gaestebuch.txt");

$max=799;  // 1 weniger setzen, weil beim Einlesen, nach loeschen 1 Eintrag zugefuegt wird
if(isset($g))
 {
  $eintraege = count($g);
  }
 else
     $eintraege = 0;

if($eintraege>$max)
 {
   for($q=$max;$q<$eintraege;$q++)
    {
     unset($data[$q]);
    }
 }

if (isset($_POST["text"]))
{

if (trim($_POST["text"])=="")
  {
   echo "<b>Du hast kein Text eingegeben !</b><br>";
   echo "Klicke auf den Backbutton deines Browsers";
  }

else
    {

$d=fopen("gaestebuch.txt","w+");       // Datei zum Anhängen öffnen
     if ($d)                                // Öffnen hat geklappt, $d ist ein Dateizeiger
   {
      $neu= "<table border=0 width=350>";
      $neu.= "<tr><td bgcolor=#00CCFF><div class=author>";
      $neu.="Von: ".htmlentities($name);
         $neu.= "</div></td></tr>";

$neu.="<tr><td bgcolor=#F4F4F4><div class=text>";
      $neu.=strtr(nl2br(htmlentities(trim($text))."<br>"),"\n\r"," ");
         $neu.="</div></td></tr></table><br><br>";
      $neu.="\n"; //Ablschluss

fputs($d,$neu); // neuen Eintrag speichern
      for ($i=0;$i<$max;$i++) // alte Einträge speichern
        {
         fputs($d,$g[$i]);
        }
       fclose($d);

array_unshift($g,$neu); // neuen Eintrag für den noch folgenden
                               // Code in $g einfügen
  }

}
}

// Auch im Weiteren gaestebuch.txt _nicht_ laden, die aktuellen
  // Daten stehen allesamt korrekt in $g.

$g=file("gaestebuch.txt"); //Auslesen

if ((! isset($_GET["start"])) || (! is_numeric($_GET["start"])))
   $start=0; // URL-Variable start ist nicht angegeben oder keine Zahl, Standardwert einsetzen
 else
   $start=$_GET["start"]; // URL-Variable start ist brauchbar, Wert übernehmen

if ((! isset($_GET["$eintraege_pro_seite"])) || (! is_numeric($_GET["$eintraege_pro_seite"])))
   $eintraege_pro_seite=10; // URL-Variable start ist nicht angegeben oder keine Zahl, Standardwert einsetzen
 else
   $eintraege_pro_seite=$_GET["$eintraege_pro_seite"]; // URL-Variable start ist brauchbar, Wert übernehmen

for ($i=$start;$i<$start+$eintraege_pro_seite;$i++)
   {
    if (isset($g[$i])) // existiert überhaupt etwas an $g[$i]?
      {
       $z=$i+1;
       echo "<center><div class=eintr>Eintrag $z.</div>$g[$i]";    // ja, eintrag ausgeben
       echo "\n";      // kosmetik, ein bißchen luft tut immer gut
      }
   }

if ($start !=0)

{
     echo "<a href="index.php?";
     echo "start=".($start-$eintraege_pro_seite);
     echo "&eintraege_pro_seite=".$eintraege_pro_seite;
     echo ""><center>zurück</a>";
    }

else
    {
     echo "<center>zurück ";
    }

if ($start+$eintraege_pro_seite<sizeof($g))
    {
     echo "<a href="index.php?";
     echo "start=".($start+$eintraege_pro_seite);
     echo "&eintraege_pro_seite=".$eintraege_pro_seite;
     echo ""><center>Weiter</a>";
    }
else
    {
     echo "<center>weiter";
    }

echo "<br><br><center>$eintraege Einträge";
?>

<br><br>

<div class=extra>
<center>Eintragen<br></div>

<form action="index.php" method="post">
  Dein Name: <center>
  <input type="text" name="name" size="24" maxlength="24">
  <br><br><br>

Dein Eintrag:<br>

<center><textarea name="text" cols="35" rows="5"></textarea><br>
<input type="submit" value="Abschicken">

</form>
</font>
</body>

</html>