Zusammenfügen unseres Designs der Web-App-Beispielseite und unserer Datenbank

Bevor wir mit PHP die Datenbank mit unserer Web-App zusammenfügen können, müssen wir erst unserer Datenbanktabelle erstellen.

Dazu nutzen wir das Tool phpMyAdmin wie wir es bereits im Datenbankkapitel kennen gelernt haben. Haben wir eine Standardinstallation, können wir phpMyAdmin direkt aufrufen über:
http://localhost/phpmyadmin/

Wir legen nun eine Datenbank mit dem Datenbanknamen „musiker“ an.

phpMyAdmin Datenbank anlegen
phpMyAdmin Datenbank anlegen

In dieser Datenbank erstellen wir eine Tabelle mit dem Namen „termine“.

Wir halten unser Beispiel sehr einfach und nutzen nur ein Minimum an Datenbankfeldern: sprich wir wollen das Veranstaltungsdatum, dass Uhrzeit des Beginns, den Veranstaltungsort und ein Bemerkungsfeld dazu nutzen. Zusätzlich benötigen wir noch einen eindeutigen Bezug, was über das ID-Feld hergestellt wird.

Diese Tabelle umfasst 5 Felder:

Feld „id“
für eine fortlaufende eindeutige Nummer, die selbständig von der Datenbank verwaltet wird. Dazu wird das Feld auf „auto_increment“ gesetzt und als Primärschlüssel. Dadurch wird automatisch beim Anlegen eines neuen Datensatzes eine noch ungenutzte fortlaufende Nummer vergeben.

Feld „datum“
Unser Veranstaltungsdatum, das in der Datenbank in englischer Schreibweise hinterlegt sein wird. Der Feldtyp ist für unser Datum „date“.

Feld „beginn“
die Startzeit, die als Textfeld mit 5 Zeichen angelegt wird

Feld „ort“
der Veranstaltungsort, der als Textfeld mit 20 Zeichen angelegt wird. Nach Bedarf kann man diese knappe Länge auch erweitern.

Feld: „anmerkung“
ein Feld mit dem Feldtyp „text“, damit längere Texte hinterlegt werden können.

Datenbankfelder für unsere Terminverwaltung
Datenbankfelder für unsere Terminverwaltung

Und damit man auch im Screenshot es besser erkennen kann, das wichtige in Groß:

Benennung und Typen der Datenbankfelder
Benennung und Typen der Datenbankfelder

Wir können bequem die Datenbank und die Tabelle offline erstellen. Diese Tabelle kann dann in phpMyAdmin über die Funktion „exportieren“ als Textdatei „herausgespielt“ werden und auf dem Server, auf dem unsere Anwendung dann läuft wieder eingespielt werden.

Beim Export erhält man eine Textdatei mit folgendem Inhalt:

CREATE TABLE `termine` (
  `id` int(10) NOT NULL,
  `datum` date DEFAULT NULL,
  `beginn` varchar(5) DEFAULT NULL,
  `ort` varchar(20) DEFAULT NULL,
  `anmerkung` text
) ENGINE=InnoDB AUTO_INCREMENT=1 DEFAULT CHARSET=utf8;

ALTER TABLE `termine`
  ADD UNIQUE KEY `id` (`id`);

ALTER TABLE `termine`
  MODIFY `id` int(10) NOT NULL AUTO_INCREMENT,AUTO_INCREMENT=1;

Wer nun keine Lust hat, die Tabelle selber in phpMyAdmin anzulegen, kann über diesen Textanweisungen und die „Importieren“-Funktion von phpMyAdmin schnell die Tabelle erstellen lassen. Die Datenbank selber muss man aber anlegen (was ja kein größeres Problem ist).

Beispieldatensätze über phpMyAdmin anlegen

Einige Beispieldatensätze sind hilfreich damit wir einfach unsere PHP-Anwendung testen können. Diese können wir auch über phpMyAdmin erstellen. Dazu den Reiter „Einfügen“ auswählen und ein paar Datensätze anlegen.

Datenbank über phpMyAdmin befüllen
Datenbank über phpMyAdmin befüllen

Die didaktisch weniger sinnvolle Variante ist natürlich wieder vorbereitete Datensätze zu importieren. Dazu kann man folgende MySQL-Anweisungsdatei nutzen und über phpMyAdmin importieren:

INSERT INTO `termine` (`id`, `datum`, `beginn`, `ort`, `anmerkung`) VALUES
(1, '2018-04-18', '19:30', 'Im Absacker', 'Blues meets Hard Rock'),
(2, '2018-06-28', '20:20', 'Stadthalle Donzstadt', 'Blues meets Heavy Metal'),
(3, '2018-07-20', '19:40', 'Schwäbisch Gmünd', 'Speed Gitarr'),
(4, '2019-12-12', '20:30', 'Stuttgart, Mhalle', 'b''sinnliches'),
(5, '2020-08-24', '21:00', 'Aalen', 'Stadthalle');