Erstellung einer Ehemaligen Datenbank mit PHP und MySQL

Das Skript erstellt mit PHP und MySQL eine Datenbank in der sich ehemalige Schüler eintragen und nach Mitschülern suchen können. In einem Adminstrationsbereich können Sie die Datenbank anlegen und verwalten, einen Newsletter verschicken oder aber alle Einträge exportieren.
Anzeige

Eine Ehemaligendatenbank bietet die exzellente Möglichkeit, den Kontakt zu vielen ehemaligen Schülern zu erhalten: Ehemalige Schüler finden Kontaktdaten anderer Schüler. Ferner können Sie per Newsletter über wichtige Ereignisse an der Schule berichten. Dadurch bleibt die Schule auch nach der Schulzeit weiterhin ein fester Bestandteil vieler ehemaliger Schüler aus denen zukünftige Eltern werden können.

Kurzüberblick über die Funktionen des Ehemaligen-Skripts

  1. Ehemalige Schüler können sich über ein einfaches Formular in die Datenbank eintragen.
  2. Besucher können nach Ehemaligen suchen und erhalten z.B. die Email-Adresse zur Kontaktaufnahme.
  3. Schutz gegen Spam durch Bestätigung eines Eintrages per Email.
  4. automatisches Anlegen der Tabelle für die Ehemaligendaten
  5. Löschen sämtlicher Ehemaligendaten (Leeren der Tabelle)
  6. Löschen der Tabelle in der Datenbank
  7. Entfernen noch nicht aktivierter Einträge, ausgenommen der letzten 5
  8. Versenden eines Newsletter
  9. Ausgabe der Daten, csv-Kompatibel
  10. beliebig durch Vorlagen an das Design Ihrer Schulhomepage anpassbar

Einführung

Das Arbeiten mit dynamischen Internetseiten, also das Trennen von Layout und Inhalt, stellt, einmal eingerichtet, eine wesentliche Erleichterung für den Webmaster da, da Abläufe automatisiert werden können. Die Funktionsweise der vorliegenden Skripts ist wie folgt:

Eintragen in die Ehemaligendatenbank

In die Internetseite der Schule wir eine Seite mit einem Anmeldeformular eingebaut, welches den Benutzer zur Angabe seiner Daten (Geburtsname, Nachname, Vorname, Abschlussjahrgang und eMail-Adresse) auffordert. Dieses Formular kann völlig frei gestaltet werden, mehr dazu unter Punkt 3. Das Ehemaligen-Skript legt nach Absenden der Daten durch den Benutzer einen neuen, vorläufigen Eintrag in der Datenbank an und sendet zeitgleich eine eMail an den Benutzer. In dieser eMail wir der Benutzer aufgefordert, einem in der Mail enthaltenen Link zu folgen, um seinen Eintrag in die Datenbank zu bestätigen. Auf diese Weise kann effektiv verhindert werden, dass Spam-Einträge in die Datenbank gelangen.

Zugriff auf die Ehemaligendatenbank

Der Zugriff auf die (öffentliche) Datenbank geschieht über ein Suchformular (frei gestaltbar, siehe Punkt 3), in das der Besucher der Internetseite einen Suchbegriff, z.B. Jahrgang, eingeben kann. Das Kombinieren mehrerer Kriterien ist nicht möglich. Nach Abschicken der Suchanfrage werden dem Besucher die Suchergebnisse präsentiert, auch diese Seite kann frei gestaltet werden.

Administration der Ehemaligendatenbank

Ein simples Administrationstool steht im Unterverzeichnis „admin“ des Ehemaligendatenbank-Ordners zur Verfügung. Weitere Infos unter Punkt 7.
Für weitergehende Verwaltungsaufgaben empfiehlt sich das Tool „phpMyAdmin“.

Wichtige Hinweise

Der Autor des Skriptes haftet nicht für Datenverlust etc., der durch den Einsatz des Skriptes auftritt. Es empfiehlt sich, eine Datensicherung (sowohl Datenbank als auch Dateien) durchzuführen, bevor man das Skript einsetzt.
Das Unterverzeichnis „admin“ beherbergt eine Reihe von Funktionen, die unbefugten nicht zugänglich gemacht werden sollten. Das Verzeichnis kann zwar umbenannt werden, sollte aber besser mit einem Passwort versehen werden. Meist gibt es in den Konfigurations-Utilities des Webspace-Providers eine Option, Verzeichnisse mit einem Passwort zu versehen. Alternativ können Sie auch selbst das Verzeichnis mit einer .htaccess schützen, sofern dies Ihr Provider zulässt. Eine Anleitung hierfür finden Sie hier.

Voraussetzungen

Um die Datenbank einrichten zu können werden Anforderungen sowohl an das Serversystem als auch an den Webmaster gestellt.

Serversystem

Für die Verwendung der Ehemaligendatenbank muss der Server PHP und mySQL unterstützen. Ferner muss eine Datenbank existieren, in der der mySQL-Benutzer das Recht besitzt, Tabellen anzulegen.

Webmaster

Folgende Begriffe sollten dem Webmaster nicht fremd sein: mySQL, Datenbank, Tabelle, Formular, Eingabefelder. Ebenso sind grundlegende HTML-Kenntnisse erforderlich.

Erstellen der Designvorlagen

Es müssen 5 Seiten erstellt werden:

  • Anmelde-Formular
  • Anmelde-Bestätigungsseite
  • Aktivierungs-Rückmeldeseite
  • Suchseite
  • Ergebnisseite (3-teilig)

Die Seiten können teilweise auch kombiniert werden, so können Anmeldeformular und Suchfunktion zusammen auf einer Seite untergebracht werden.

Für alle Seiten existieren Beispielvorlagen im Verzeichnis ‚samples’, die zum besseren Verständnis der Anleitung zu Rate gezogen werden können.

Anmelde-Formular

Das Anmelde-Formular besteht aus einem normalen HTML-Formular mit den folgenden Eingabefelder / Parametern:

Parameter

  • action=“ehemalige.php“ (falls im gleichen Verzeichnis, sonst Pfad anpassen!)
  • method=“GET“

Eingabefelder (Groß-/Kleinschreibung beachten!):

  • Abschlussjahr (hier am besten eine Auswahlbox verwenden!)
  • Geburtsname
  • Nachname
  • Vorname
  • eMail
  • Verstecktes Eingabefeld (<input type=“hidden“ name=“action“ value=“add“>)
  • Feld ‚action’ mit dem Wert ‚add’

…und der SUBMIT-Button (Beschriftung / Name beliebig)

Der Speicherort ist beliebig, nur die o.g. Pfadangabe zur Datei „ehemalige.php“ muss angepasst werden.

Anmelde-Bestätigungsseite

Diese Seite wird nach Absenden des Formulares angezeigt. Sie können Sie frei gestalten. An einer Stelle im Textkörper muss die Variable $message untergebracht werden, welche durch eine Systemmeldung ersetzt werden wird.

Die Datei muss unter dem Namen „anmeldung_bericht.htm“ im Ordner „templates“ gespeichert werden.

Aktivierungs-Rückmeldeseite

Diese Seite wird aufgerufen wenn der Benutzer dem Link in der Bestätigungs-eMail folgt. Sie ist frei gestaltbar, muss aber an einer zentralen Stelle den Platzhalter ‚$message’ enthalten, der im Betrieb dann von einer Systemrückmeldung ersetzt wird.

Die Datei muss unter dem Namen „aktivierung_bericht.htm“ im Ordner „templates“ gespeichert werden.

Suchseite

Die Suchseite besteht wie auch die Anmeldeseite aus einem Formular mit folgenden Parametern / Eingabefeldern:

Parameter

  • action=“ehemalige.php“ (Pfadangabe anpassen!)
  • method=“GET“

 

Eingabefelder (Groß-/Kleinschreibung beachten!)

  • „Suchbegriff“
  • Verstecktes Eingabefeld (<input type=“hidden“ name=“action“ value=“add“>)
  • Feld ‚action’ mit dem Wert ‚search’

…und der SUBMIT-Button (Beschriftung / Name beliebig)

Der Speicherort ist beliebig, nur die o.g. Pfadangabe zur Datei „ehemalige.php“ muss angepasst werden.

Ergebnisseite

Die Ergebnisseite ist die komplexeste aller Seiten, da wir diese später in 3 Teile teilen müssen. Vorerst genügt es jedoch, eine „normale“ Internetseite zu erstellen, welche eine Tabelle enthält, die 5 Spalten und 3 Zeilen umfasst. In die oberste Zeile kommen die Spaltenüberschriften (Abschlussjahrgang, Geburtsname, Name, Vorname, eMail), die 2. Zeile bleibt frei, und in die letzte Zeile kommen die Werte „$Abschlussjahr“, „$Geburtsname“, „$Name“, „$Vorname“ und „$eMail“.

Nun können Schriftarten, Tabellenformatierungen etc. gewählt werden. Über die Tabelle kann wahlweise noch das Suchformular gesetzt werden.

Um das weitere Vorgehen verständlich zu machen, hier die Vorgehensweise des scripts bei der Ausgabe der Ergebnislisten: Als erstes wird der Seitenanfang mit dem Tabellenkopf ausgegeben (der 1. Teil der Seite). Der zweite Teil, der nur den Quelltext der 3. Tabellenzeile enthält, wird für jeden auszugebenden Datensatz, mit entsprechend anderen Daten gefüllt, wiederholt. Danach wir das Tabellen- und Seitenende ausgegeben (Teil 3). Diese Einteilung der Seite gestaltet sich mit HTML-Kenntnissen deutlich leichter als ohne, kann aber evtl. auch ohne (evtl. unter Zuhilfenahme der Beipieldateien) geschehen. Als Programm zum Teilen der Datei empfiehlt sich ein einfacher Texteditor.

Der 1. Teil umfasst die Seite vom absoluten Anfang bis zu der Tabellenzeile, die die Variable ($Abschlussjahr etc.) enthält. Den Anfang der Tabellenzeile finden Sie, in dem Sie die Variable „$Abschlussjahr“ lokalisieren und solange in Richtung des Anfanges der Datei suchen, bis sie auf „<tr> stoßen. Dies ist der erste Befehl der nicht mehr mit zum 1. Teil gehört.
Den Quelltext des ersten Teils speichern Sie im Ordner „templates“ als „ausgabe_top.htm“ ab.

Der 2. Teil umfasst den übrig gebliebenen Quelltext bis einschließlich </tr> und muss unter „ausgabe_body.htm“ im Ordner „templates“ gespeichert werden.

Der 3. Teil umfasst den Rest der Ursprungsdatei und muss nur noch unter „ausgabe_closer.htm“ gespeichert werden.

Konfiguration des Ehemaligen-skriptes

Öffnen Sie die Datei „config.php“ in einem Texteditor wie z.B. Notepad / Editor.
In dieser Datei werden grundlegende Einstellungen vorgenommen, die das Skript für seine ordentliche Arbeit benötigt. Sie sind in der Datei selbst bezeichnet.

Übertragen der Daten auf den Server

Nun können die Daten hochgeladen werden. Hierbei ist zu beachten, dass die Unterverzeichisse „samples“ und „templates“ nicht von den Dateien „ehemalige.php“ und „config.php“ getrennt werden.

Einrichten der Datenbank

Nachdem die Dateien auf den Server kopiert wurden, rufen Sie mit ihrem Browser die Datei admin/index.php auf. Hier klicken Sie auf den obersten Link, hierdurch wird die Datenbank angelegt. Nun können Einträge angelegt werden etc. – die Ehemaligendatenbank ist also installiert.

Screenshot des Administrationsbereichs

Einbinden in die Schulhomepage

Zum Einbinden der Datenbank in die Schulhomepage müssen lediglich die einzelnen Seiten wie z.B. Anmeldeformular, Suchmaske verlinkt werden.

Bitte beachten Sie, dass das Skript nur mit PHP und MySQL funktioniert.

Download des Ehemaligenskripts Version 1.3 inklusive ausführlicher Anleitung. (Version 1.3 jetzt mit einem Sicherheitsupdate von Alexander Kammerer im November 2011)

Bei Fragen und Anregungen wenden Sie sich bitte direkt an den Autor Steffen Knott.

Wenn Sie PHP und MySQL nicht nutzen möchten können Sie noch viel leichter eine kostenlose und werbefreie Ehemaligenseite mit StayFriends.de erstellen.


Anzeige

Mehr Artikel zu »Software/Webhosting«