Ein Gästebuch in PHP Programmieren

Eine ausführliche Anleitung wie man auf einfache Art ein Gästebuch realsiert. Dieses Gästebuch basiert auf einer Textdatenbank!

Die Eintragsseite

Zuerst erstellen wir die Internetseite wo man sich in unser Gästebuch eintragen kann. Wir starten unseren Texteditor und speichern erstmal eine Textdatei mit dem Namen eintragen.php ab. Am besten tust du alles in einen Ordner den du z.b Gästebuch nennst. Jetzt öffnen wir diese Datei wenn sie noch nicht geöffnet ist und schreiben da erstmal ein HTML Gerüst rein (HTML Kenntnisse werden für das ganze Tutorial benötigt !) Inhalt der Datei eintragen.php

<html>
<head>
<title>Eintragen</title>
</head>
<body>
</body>
</html>

Natürlich kannst du auch einen anderen Titel der Seite benutzen. Jetzt geben wir erstmal ein paar HTML Codes zum Thema Design ein. Ich werde jetzt nix großes hier benutzen, das kannst du später ja ändern. Es geht hier ja eigentlich darum wie man ein Gästebuch programmiert. Inhalt der Datei eintragen.php

<html>
<head>
<title>Eintragen</title>
</head>
<body bgcolor="#FFFFFF">
<b>Eintragen in mein G&auml;stebuch</b>

</body>

</html>

Jetzt haben wir einen weißen Hintergrund und die Schriftart Verdana in der Größe 1 Dann fügen wir jetzt noch den HTML Code für ein Formular ein das so aussehen wird: Beispiel für Formular bei einem neuen Eintrags

<form action="eintragen.php?action=add" method="get">
  Dein Name:
    <input type="text" name="name" size="24">
  <br>
  E-Mail:
  <input type="text" name="mail" size="24">
  <br>
  Homepage:
  <input type="text" name="www" size="24">
  Dein Eintrag:
  <textarea name="text" cols="35" rows="5"></textarea>
</form>

Inhalt der Datei eintragen.php

<html>
<head>
<title>Eintragen</title>
</head>

<body bgcolor="#FFFFFF">
<b>Eintragen in mein G&auml;stebuch</b>
<form action="eintragen.php?action=add" method="get">
  Dein Name:
  <input type="text" name="name" size="24">
  <br>
  E-Mail:
  <input type="text" name="mail" size="24">
  <br>
  Homepage:
  <input type="text" name="www" size="24">
  <br>
  <br>
  Dein Eintrag:<br>
  <textarea name="text" cols="35" rows="5"></textarea>
  <br>
</form>
</body>

</html>

Ok, das war eigentlich alles zum HTML der Datei eintragen.php Jetzt kann es losgehen mit der PHP Programmierung.

Erstmal fügen wir zwischen <body bgcolor="#FFFFFF"> und <font face="Verdana" size="1"> <?php und ?> ein. Dann schreiben wir die ersten Zeilen:

Inhalt der Datei eintragen.php

<html>
<head>
<title>Eintragen</title>
</head>

<body bgcolor="#FFFFFF">
<?php
if ($action == "add"){

}
?>
<b>Eintragen in mein G&auml;stebuch</b>

<form action="eintragen.php?action=add" method="get">
  Dein Name:
  <input type="text" name="name" size="24">
 
  E-Mail:
  <input type="text" name="mail" size="24">

  Homepage:
  <input type="text" name="www" size="24">

  Dein Eintrag:
  <textarea name="text" cols="35" rows="5"></textarea>

</form>
</body>

</html>

Erstmal.. wem schon aufgefallen ist: Das Formular sendet wieder an seine eigene Datei. Nur das diesmal $action == add ist. Mit if ($action == "add") wird gecheckt ob eben $action = add ist. Wenn ja dann passiert das was zwischen { und } steht.

Aber wir wollen ja nicht das wenn $action = add ist nochimmer unser Forumular unten erscheint. Also fügen wir noch ein bisschen PHP ein:

Inhalt der Datei eintragen.php

<html>
<head>
<title>Eintragen</title>
</head>

<body bgcolor="#FFFFFF">
<?php
if ($action == "add"){

}
else{
?>
<b>Eintragen in mein G&auml;stebuch</b>
<form action="eintragen.php?action=add" method="get">
  Dein Name:
  <input type="text" name="name" size="24">
  <br>
  E-Mail:
  <input type="text" name="mail" size="24">
  <br>
  Homepage:
  <input type="text" name="www" size="24">
  <br>
  <br>
  Dein Eintrag:<br>
  <textarea name="text" cols="35" rows="5"></textarea>
  <br>
</form>
<?php
}
?>
</body>

</html>

Also wenn $action nicht = add ist wird eben (else) unser HTML Code ausgegeben Das ganze funktioniert schon. Ladet das alles auf eine PHP fähigen Server und öffnet erstmal die Datei mit der URL:

http://www.deineseite.de/eintragen.php

Es erscheint eurer Formular. Füllt das Formular aus und klickt auf den "Abschicken" Button

Es erscheint wieder eintragen.php aber man sieht das Formular nicht mehr. Sondern einfach eine leer Seite. Weil wir ja noch nichts zwischen { und } angegeben haben was erscheinen soll wenn $action = add ist

Also, soll jetztmal was passieren :)

Jetzt muss ja erstmal gescheckt werden ob der oder diejenige etwas geschrieben hat. Kann ja sein das er oder sie einfach nur auf Abschicken klickt ohne das was angegeben wurde.

Inhalt der Datei eintragen.php

<html>
<head>
<title>Eintragen</title>
</head>

<body bgcolor="#FFFFFF">
<?php
if ($action == "add"){

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

}
else{
?>
<b>Eintragen in mein G&auml;stebuch</b><br>
<form action="eintragen.php?action=add" method="get">
  Dein Name:
  <input type="text" name="name" size="24">

  E-Mail:
  <input type="text" name="mail" size="24">
 
  Homepage:
  <input type="text" name="www" size="24">
 
 
  Dein Eintrag:
  <textarea name="text" cols="35" rows="5"></textarea>
  
</form>
<?php
}
?>
</body>
</html>

Wir checken wieder mit if ob alle Felder ausgefüllt worden sind. Wir checken aber nicht ob Homepage ausgefüllt worden ist weil ja nicht jeder eine Homepage hat. Die || dazwischen heißen das wenn einer von diesen Angaben stimmt z.b wenn $text = "" ist dann wird abgebrochen und

Du hast nicht alle Felder ausgefüllt ! Klicke auf den Backbutton deines Browsers

ausgegeben. Alles bishier verstanden ? Gut.

Aber was machen wir wenn ausnahmsweise mal einer kommt und alles brav ausfüllt ? Da muss ein } else { } her !

Inhalt der Datei eintragen.php

<html>
<head>
<title>Eintragen</title>
</head>

<body bgcolor="#FFFFFF">
<?php
if ($action == "add"){

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

}

}
else{
?>
<b>Eintragen in mein G&auml;stebuch</b><br>
<form action="eintragen.php?action=add" method="get">
  Dein Name:
  <input type="text" name="name" size="24">
  <br>
  E-Mail:
  <input type="text" name="mail" size="24">
  <br>
  Homepage:
  <input type="text" name="www" size="24">
  <br>
  <br>
  Dein Eintrag:<br>
  <textarea name="text" cols="35" rows="5"></textarea>
  <br>
</form>
<?php
}
?>
</body>

</html>

Jetzt wird es eigentlich ganz simpel. Es müssen alle Daten in einer Datei geschrieben werden. Das geht so:

Inhalt der Datei eintragen.php

<html>
<head>
<title>Eintragen</title>
</head>

<body bgcolor="#FFFFFF">
<?php
if ($action == "add"){

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

if ($www == ""){
$eintrag = "<a href="mailto:$mail">$name</a><br>$text";
}
else{
$eintrag = "<a href="mailto:$mail">$name</a>

<br><a href="$www">$www</a>$text<hr><br><br>";
}

$datei = fopen("gaestebuch.txt","w+");
fputs($datei,$eintrag);
fclose($datei);
echo "Danke <i>$name</i> f&uuml;r deinen Eintrag";

}

}
else{
?>
<b>Eintragen in mein G&auml;stebuch</b>
<form action="eintragen.php?action=add" method="get">
  Dein Name:
  <input type="text" name="name" size="24">
  <br>
  E-Mail:
  <input type="text" name="mail" size="24">
  <br>
  Homepage:
  <input type="text" name="www" size="24">
  <br>
  <br>
  Dein Eintrag:<br>
  <textarea name="text" cols="35" rows="5"></textarea>
  <br>
</form>
<?php
}
?>
</body>

</html>

Es wird automatisch die Datei gaestebuch.txt erstellt wenn wir was in diese Datei schrieben wollen. Die Variable $eintrag enthält dann alle Daten die vom User angegeben worden sind. Plus einwenig Design.

Also würde ein Eintrag z.b so aussehen:

Andreas http://www.freakonline.de Das hier ist ein Testeintrag der irgendeinen Text enthalten soll.

So ungefähr würde das dann aussehen. Natürlich kannst du das ruhig ändern !

Wenn du ein " ausgeben willst musst du immer ein " umgedrehtes Slash davorsetzen.

Naja.. am Ende wird dann $eintrag in die Datei gaestebuch.txt geschrieben Und am Ende kommt ein Dankeschön mit echo "";

Jetzt brauchen wir nur noch eine Seite wo wir uns das Gästebuch ansehen können. Das ist nicht mehr viel:

Inhalt der Datei zeigen.php

<html>
<head>
<title>Eintragen</title>
</head>

<body bgcolor="#FFFFFF">

<b>Mein G&auml;stebuch</b><br>
<a href="eintragen.php">Hier</a> kannst du dich eintragen<br>
<br>
<?php
include("gaestebuch.txt");
?>

</body>

</html>

Die Datei gaestebuch.txt wird einfach jetzt eingefügt. Dein Gästebuch ist fertig !

So würde jetzt die Datei zeigen.php nach einigen Einträgen aussehen:

Mein Gästebuch

Hier kannst du dich eintragen

Andreas
http://www.freakonline.de
Das hier ist ein Testeintrag der irgendeinen
Text enthalten soll.


Tom
Schönes Gästebuch !


422343
http://www.yahoo.de
Hehe, das ist zwar nicht meine Homepage aber egal
:)

Erfahrungen

Es sind noch keine Kommentare vorhanden.

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe

Verwandte Beiträge

Programmierung - SQL

Dieser SQL-Kurs wendet sich vor allem an Programmierer, die mit Hilfe von SQL auf Datebaken zugreifen, und an alle, die Datenbanken neu entwerfen, erweitern oder abändern wollen ...

webmaster205@

Autor : webmaster205@
Kategorie: mySQL-Tutorials

Spielereien mit Zeit und Datum

Das Rechnen mit Datum und Zeit ist nur selten unproblematisch, PHP stellt uns dafür zahlreiche Funktionen zur Verfügung. Wir wollen uns im folgenden ein paar davon ansehen und an Beispielen erproben. ...

Stephane

Autor : Stephane
Kategorie: PHP-Tutorials

plotting masters - a professional guide - Teil I

Grafische Interpolation und Bestapproximation von numerischen Wertepaaren: Wir wollen Punkte auf einer Zeichenebene über verschiedene Verfahren miteinander verbinden. ...

EVAMasters

Autor : EVAMasters
Kategorie: PHP-Tutorials

Umfragenscript

Dieses Tutorial zeigt wie man mit eine Umfragescript mit einen TXT-Datenbank erstellen kann. ...

kiliandreissig@

Autor : kiliandreissig@
Kategorie: PHP-Tutorials

Templates mit PHP

Dieses Tutorial beschreibt in mehreren Teilen wie man Templates in PHP verwendet. Ferner erhält man eine Einführung in die Entwicklung eines eigenen Templatesystems. ...

mortalan@

Autor : mortalan@
Kategorie: PHP-Tutorials

MySQL Klasse

In meinem kleinen Tutorial zeige ich euch, wie ihr ganz einfach eine kleine MySQL Klasse schreiben könnt. ...

Borlabs

Autor : Borlabs
Kategorie: mySQL-Tutorials

Was muss ich in WordPress einstellen, damit Google Fonts nicht mehr geladen werden?

Möchten Du WordPress davon abhalten, Google Fonts zu verwenden? Hier erfährst Du, was du dafür in WordPress einstellen musst. ...

admin

Autor : admin
Kategorie: Sonstige Tutorials

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen