Habe folgenden Code so aus einem Lernbuch abgeschrieben und bestimmt 20 mal auf seine Richtigkeit überprüft. Doch wenn ich das Formular abschicke, passiert nichts. Lösch ich allerdings den Teil :
"$allesklar = TRUE;
}
else
}
$allesklar = FALSE;
}"
überträgt er den Text in die gbook.txt, gibt allerdings einen Fehler auf der 2. Seite aus.
Vielleicht hat ja mal wer Lust sich den Code anzugucken, wäre sehr nett.
---
gbook1.php :
<html>
<head>
<title>Guestbook</title>
</head>
<body>
<form action="gbook2.php" method="post">
<p>Geben Sie Ihre Email-Adresse ein :</p>
<input type="text" size=20 name="Email">
<br>
<br>
<p>Geben Sie hier Ihren Namen ein :</p>
<input type="text" size=20 name="Name">
<br>
<br>
<p>Geben Sie hier Ihren Kommentar ein :</p>
<textarea cols=48 rows=10 name="Kommentar"></textarea>
<br>
<br>
<input type="submit" value="Absenden">
<input type="reset" value="Eingabe löschen" name="reset">
</form>
<?php
// Liest Datei gbook.txt aus
$datei = fopen ("gbook.txt", "r");
while (!feof ($datei))
{
echo fgets ($datei,1000),"<br>";
}
fclose ($datei);
?>
</body>
</html>
---
gbook2.php
<?php
function SchreibeDatei ($Email,$Name,$Kommentar)
{
// Feldinhalte werden in externe Datei gespeichert
$datei = "gbook.txt";
$Kommentar = strip_tags ($Kommentar);
$Kommentar = htmlentities ($Kommentar);
$Name = htmlentities ($Name);
$oeffnen = fopen ($datei, "a");
fwrite ($oeffnen,
"<a href="mailto:$Email">$Name</a>\n$Kommentar\n<hr>\n");
fclose ($oeffnen);
$allesklar = TRUE;
}
else
}
$allesklar = FALSE;
}
}
// Funktion endet hier
?>
<html>
<head>
<title>Guestbook</title>
</head>
<body>
<?php
// Rueckmeldung fuer den Benutzer
$CallFunction = SchreibeDatei ($Email,$Name,$Kommentar);
if ($CallFunction)
{
print ("Danke für den Eintrag");
}
else
{
print ("Fehler, bitte noch einmal versuchen");
}
?>
<p>
<a href="gbook1.php">Zurueck / Eintraege lesen</a></p>
</body>
</html>