Geschrieben von gigaman am 06.02.2005, 18:22

Als erstes heisse ich sie willkommen.
Nun zum Tutorial :
In diesem Tutorial werde ich euch zeigen wie man ein simples Gästebuch mit MySQL programmiert. Und wie ihr auch sehen werdet is der Code auch nicht zu Groß.
Fangen wir an.
Als erstes sollt ihr eine neue Tabelle erstellen mit dem Namen "gbook" und Folgenden Inhalten :
ID, Nickname, Datum, Inhalt (ich hoffe ihr wisst wie es geht wenn nicht findet man genug Tutorials dafür ;) )

Am besten ist es immer Eine "config.php" zu erstellen wo die Einstellungen gespeichert werden diese sollte dann folgenden Aufbau haben :

<?
/* Diese Angaben werden benötigt um sich nachher mit der Datenbank zu verbinden */
$host = "derhostname"; //in den meisten faellen "localhost"
$user = "username"; //zB: xHead
$passwort = "pass"; //zB: kopf
$datenbank = "datenbank"; //zB: daten_de_db
?>

So des wärs mal für die "config.php".Natürlich könnt ihr da auch noch andere Einstellungen einbauen.

Jetzt weiter zu der Datei "gbook.php".Diese Datei benötigen wir natürlich um die Daten zu sehen ;) :

<?
include ("config.php"); //Einfügen der Config-Datei
/* Als erstes muessen wir uns mit der Datenbank verbinden */
mysql_connect("$host","$user","$passwort"); //hier wird auf die Datenbank verbunden falls ein Error erscheint muesst ihr ein fehler eingegeben oder auch auch ich =)
mysql_select_db("$datenbank"); //mit diesem Befehl waehlt ihr die Datenbank aus wo die Daten gespeichert werden
/*Nun muessen wir die Daten auslesen*/
$sql = "SELECT * FROM gbook ORDER BY ID DESC;"; //Dies ist der Befehl der nachher die Datenbank empfangen wird. Der "*" steht dafür dass wir alle Spalten in der Tabelle gbook waehlen. "ORDER BY ID DESC" steht da dass die Eintraege absteigend der ID ausgewaehlt werden.
$result = mysql_query($sql); //hier kann ich euch nicht richtig sagen wofuer ist eher um alles etwas kleiner zu halten
$data = mysql_fetch_assoc($result); //Dieser Befehlwerdet ihr spaeter sehen wofuer er steht
/* so jetzt müsste die verbindung stehen der rest ist nur noch ein katzensprung */
echo "<br>".$data['Inhalt']."<br><br>"; //bei diesem Echo wird der inhalt aus der Spalte "Inhalt" ausgelesen
echo "Geschrieben von".$data['Nickname']." am ".$data['Datum']." .<br><br>"; //Hier werden halt Nickname und Datum ausgelesen
echo "<a href='eintrag.html'>Eintragen</a>"; //Link zum Formular
?>

Soviel zur Auslesung
So die Datei vom Formular werde ich überspringen da ihr sicher wisst wie man Formulare macht wenn nicht könnt ihr mir eine Nachricht schicken.

Nun weiter zu der Datei zum Eintragen der Daten. Diese Datei nennen wir "save.php" (Vom Formular aus muss man auf diese Datei springen):

<?
/*wisst ihr mittlerweile schon */
include ("config.php");
mysql_connect("$host","$user","$passwort");
mysql_select_db("$datenbank");
/*Wir müssen noch das Datum ermitteln*/
$date = date("d.M.y H:i");
/* nun folgt der wichtige Teil */
$sql = "INSERT INTO gbook (Nickname,Datum,Inhalt) VALUES ('$nick','$date','$text');"; //Dies ist der Befehl der nachher die Datenbank empfangen wird. In den Klammern nach "gbook" sind die Spalten und hinter "VALUES" stehn die dazugehörigen Informationen.
$result = mysql_query($sql);
mysql_fetch_assoc($result); //Nun ist es ein Befehl und keine Variable also wird der Eintrag sofort gespeichert
echo "Danke für den Eintrag";
?>

So das wars schon falls ihr Fehler bemerkt (kann jedem passieren) schreibt mir einfach.In das Script könnt ihr natürlich auch andere Sachen hinzufügen.

VORTEILE :
Das Gästebuch ist MySQL-basierend deshalbt ist der Code kleiner als bei einem Textdateien Gästebuch.
Keine große Mühe mit dem sortieren der einträge.
NACHTEILE :
Zumindest jetzt ist im Script kein Flooding-Schutz.

Für Fragen einfach eine Nachricht oder eine Mail an goergenj@internet.lu

Bewertung Anzahl
6
27,3 %
3 Bewertungen
5
27,3 %
3 Bewertungen
4
9,1 %
1 Bewertungen
3
27,3 %
3 Bewertungen
1
9,1 %
1 Bewertungen