Das Ziel dieser Arbeit gliedert sich in zwei Bereiche. Zum einen soll ein einfaches Internetforum auf der Basis von PHP und MariaDB erstellt werden und dabei auch eine Weboberfläche zur Administration zur Verfügung gestellt werden.
Des Weiteren soll die Modellierung der Datenbank, sowie die technische Umsetzung der Datenbank und der Weboberfläche dokumentiert und die verwendeten Programme und Tools kurz vorgestellt werden.
Zunächst werden die verwendeten Programme und Werkzeuge kurz vorgestellt. Anschließend wird auf die Modellierung der Datenbank und deren technische Umsetzung eingegangen. Die in PHP geschriebenen Weboberflächen werden im vierten Kapitel beschrieben und danach das Assignment mit einer kritischen Reflexion und einem Ausblick auf die mögliche Weiterentwicklung des Forums abgeschlossen.
In der Gesellschaft des 21.Jahrhunderts ist es nahezu unmöglich sich dem Einflussbereich von Datenbanken zu entziehen. Egal ob an der Kasse im Supermarkt der Barcode unserer Produkte gescannt wird, um den Preis zu ermitteln, unsere Gehaltsabrechnung vom Arbeitgeber erstellt wird oder wir uns bei einem Streaming-Dienst anmelden, um unsere neue Lieblingsserie anzuschauen. Ständig arbeiten Datenbanksysteme im Hintergrund und ermöglichen es uns die Vorteile des digitalen Zeitalters zu nutzen. Eines der weltweit verbreitetsten Datenbankverwaltungssysteme ist MySQL bzw. die daraus abgespaltene Weiterentwicklung MariaDB welche weitgehend kompatibel mit MySQL ist. In Zusammenarbeit mit der serverseitigen Websprache PHP kann die gesamte Bandbreite von Einsteigerübungen bis hin zu großen Projekten im Bereich Datenbanken mit Weboberfläche abgedeckt werden. Daher ist es sehr zu empfehlen sich im Studiengang Wirtschaftsinformatik mit dem Team aus MySQL und PHP auseinander zu setzen und die Grundlagen für einen späteren beruflichen Einsatz zu schaffen.
Inhaltsverzeichnis
1. Einleitung
1.1. Relevanz des Themas
1.2. Ziel der Arbeit
1.3. Aufbau der Arbeit
1.4. Kurzdarstellung XAMPP
1.4.1. Apache HTTP Server
1.4.2. MariaDB bzw. MySQL
1.4.3. PHP (PHP: Hypertext Preprocessor)
1.4.4. phpMyAdmin
1.4.5. XAMPP Control Panel
1.5. Kurzdarstellung MySQL Workbench
2. Datenbank Erstellung für das Internetforum
2.1. Datenbank Modellierung
2.2. Technische Umsetzung der Datenbank
3. PHP Programme für das Internetforum
3.1. Weboberfläche des Forums
3.2. Weboberfläche des Administratorenbereichs
3.3. Hilfsdateien
4. Schluss
4.1. Zusammenfassung
4.2. Kritische Reflexion der eigenen Vorgehensweise
Zielsetzung & Themen
Das primäre Ziel dieser Arbeit ist die praktische Konzeption und Umsetzung eines Internetforums auf Basis einer MySQL/MariaDB-Datenbank sowie einer PHP-basierten Weboberfläche, inklusive eines administrativen Zugangs zur Datenverwaltung.
- Grundlagen und Kurzdarstellung der verwendeten Entwicklungsumgebung XAMPP und MySQL Workbench.
- Relationales Datenbankdesign und Modellierung der Entitätstypen „benutzer“, „thema“ und „beitrag“.
- Technische Implementierung der Datenbank mittels Forward Engineering.
- Erstellung der PHP-basierten Weboberflächen für Nutzer und Administratoren.
- Dokumentation der administrativen Sicherheitsaspekte und der Hilfsdateien.
Auszug aus dem Buch
2.1. Datenbank Modellierung
Bei der Modellierung der relationalen Datenbank für das Internetforum wurde die Datenstruktur in 3 Entitätstypen aufgeteilt, die sich jeweils auf ein eng abgerenztes Thema beziehen. Alle Entitätstypen verwenden als Primärschlüssel ihre jeweilge ID und als Fremdschlüssel nur die IDs der anderen Entitätstypen. Auf diese Weise wurde eine redundante Datenhaltung verhindert, was zur besseren Pflege und Leistungsfähigkeit der Datenbank beiträgt. Das Datenbank-Modell ist damit bereits normalisiert und entspricht der dritten Normalform.
Der Entitätstyp „benutzer“ enthält alle Merkmale, wie Nickname, Vorname, Nachname, Passwort (md5 verschlüsselt) und Email-Adresse, die ausschließlich direkt dem Benutzer zugeordnet werden können. Dazu kommen die Attribute „Administrator“ und „gesperrt“, welche als „Flag“ dienen, um dem Benutzer die entsprechenden Rechte geben bzw. entziehen zu können.
„thema“ ist der Entitätstyp, welcher das einzelne Thema im Forum vertritt. Er enthält den Titel der Diskussion, den Zeitstempel wann er angelegt wurde und die ID des Benutzers der das Thema angelegt hat. Auch „thema“ hat ein Flag-Attribut, es heißt „beendet“ und kann verwendet werden um keine weiteren Beiträge zum Thema mehr zuzulassen.
Der Entitätstyp „beitrag“ enthält die einzelnen Diskussions-Beiträge, zusammen mit dem Erstellungszeitstempel sowie der Benutzer- und Thema ID der dem Beitrag zuzuordnen ist.
Die Assoziationen zwischen den Tabellen in der Abblidung 1 geben 1:n Beziehungen an. Dahinter steht folgende Bedeutung: Ein Benutzer kann beliebig viele Themen und Beiträge generieren und beliebig viele Beiträge können einem Thema zugeordnet werden. Umgekehrt kann ein Beitrag nur genau zu einem Benutzer und einem Thema gehören, sowie ein Thema genau zu einem Benutzer zuordnen ist.
Zusammenfassung der Kapitel
1. Einleitung: Diese Einleitung erläutert die Relevanz von Datenbanksystemen im digitalen Zeitalter und definiert die Zielsetzung zur Erstellung eines Internetforums mit PHP und MariaDB.
2. Datenbank Erstellung für das Internetforum: In diesem Kapitel wird das relationale Datenmodell entworfen und die technische Überführung in ein physisches Datenbankschema mittels MySQL Workbench erläutert.
3. PHP Programme für das Internetforum: Das Kapitel beschreibt die Entwicklung der webbasierten Nutzeroberflächen sowie des administrativen Bereichs und die Rolle der sicherheitsrelevanten Hilfsdateien.
4. Schluss: Der Abschluss fasst die erreichten Ziele zusammen und reflektiert kritisch die Umsetzung sowie mögliche Sicherheitsverbesserungen für die Zukunft.
Schlüsselwörter
Internetforum, Datenbankmodellierung, MySQL, MariaDB, PHP, Webentwicklung, Datenbanksysteme, XAMPP, Entity-Relationship-Diagramm, Administration, Session-Variable, Datensicherheit, Normalisierung, Softwareentwicklung, SQL
Häufig gestellte Fragen
Worum geht es in dieser Arbeit grundsätzlich?
Die Arbeit befasst sich mit der technischen Entwicklung eines einfachen Internetforums durch die Kombination von PHP und einer relationalen Datenbank.
Welche Themenfelder werden zentral behandelt?
Die zentralen Schwerpunkte liegen auf der Datenbankmodellierung, der Implementierung einer webbasierten Benutzeroberfläche und der Einrichtung eines Administratorenbereichs.
Was ist das primäre Ziel oder die Forschungsfrage?
Das Hauptziel ist die Erstellung und Dokumentation eines funktionsfähigen Internetforums samt Datenbankanbindung und Administrationswerkzeugen.
Welche wissenschaftliche Methode wird verwendet?
Die Arbeit basiert auf einem konstruktiven Vorgehen: Entwurf, Modellierung und praktische Implementierung von Softwarekomponenten innerhalb einer XAMPP-Umgebung.
Was wird im Hauptteil behandelt?
Im Hauptteil werden der Entwurf der Datenbankstruktur, die Verwendung der MySQL Workbench zur Tabellenerstellung sowie der Aufbau der verschiedenen PHP-Skripte für Nutzer und Admins detailliert beschrieben.
Welche Schlüsselwörter charakterisieren die Arbeit?
Wichtige Begriffe sind PHP, MySQL, MariaDB, Datenbankmodellierung, Internetforum, Session-Management und Webentwicklung.
Wie werden Administratorenrechte geschützt?
Der Zugriff auf den Administrationsbereich wird durch Session-Variablen und die Prüfung eines entsprechenden Login-Status auf den administrativen PHP-Seiten realisiert.
Warum wird im Projekt MariaDB anstelle von MySQL eingesetzt?
XAMPP ersetzte im Oktober 2015 MySQL durch MariaDB, wobei die Nutzung weitgehend identisch bleibt, weshalb das DBMS im Sprachgebrauch oft synonym als MySQL bezeichnet wird.
- Quote paper
- Sascha Lang (Author), 2019, Erstellung eines einfachen Internetforums basierend auf einer MySQL-Datenbank und PHP, Munich, GRIN Verlag, https://www.grin.com/document/499932