Wie PHP mit MySQL-Datenbanken spricht
Datenbanken verbinden
Du lernst, PHP mit MySQL zu verbinden
SQL schreiben
Du verstehst SELECT, INSERT, UPDATE, DELETE Befehle
Daten verwenden
Du kannst Daten aus der Datenbank in deine Website integrieren
Variablen in PHP sind wie ein Kurzzeitgedächtnis: Sobald die Seite neu lädt, ist alles vergessen. Cookies merken sich zwar Dinge, aber nur für einen einzigen User auf dessen Gerät. Wenn wir Daten dauerhaft und für alle User speichern wollen (z.B. Blogbeiträge, User-Accounts oder Gästebuch-Einträge), brauchen wir ein echtes Langzeitgedächtnis: Die Datenbank.
Ist wie ein riesiges Excel-Dokument auf dem Server. Sie besteht aus Tabellen mit Spalten (z.B. ID, Name, Text).
Ist unser Bibliothekar. Er hat den Schlüssel zur Bibliothek und führt unsere Aufträge aus.
Der Bibliothekar spricht nur eine einzige Sprache: SQL. Wir müssen unsere Wünsche in SQL formulieren.
Bevor PHP Daten speichern kann, muss es an der Bibliothek anklopfen und das Passwort vorzeigen. Wir nutzen dafür den modernen Standard PDO (PHP Data Objects):
charset=utf8mb4?
Das stellt sicher, dass Umlaute (ä, ö, ü) und Sonderzeichen korrekt gespeichert und geladen werden. ATTR_ERRMODE sorgt dafür, dass Fehler als PHP-Ausnahmen auftauchen – so findet man Probleme viel schneller.
SELECT
Um Daten zu laden, nutzen wir den SQL-Befehl SELECT. Wir bitten den Bibliothekar, uns alle Einträge aus einer Tabelle (z.B. "schueler") zu holen.
WHEREMeistens wollen wir nicht alle Datensätze, sondern nur ganz bestimmte. Das WHERE-Schlüsselwort filtert die Ergebnisse – wie eine Suchanfrage.
Nützliche SQL-Ergänzungen für SELECT:
Um Daten aus einem Formular (z.B. via `$_POST`) zu speichern, nutzen wir INSERT INTO. Hier müssen wir besonders vorsichtig sein wegen böswilligen Hackern!
Wenn du Formulardaten ($_POST) ohne Platzhalter direkt in den SQL-Code einfügst, können Hacker über das Formular Befehle einschleusen, die deine gesamte Datenbank löschen (genannt SQL-Injection). Der Befehl prepare() wäscht den Text vorher sauber und macht ihn völlig harmlos.
UPDATE
Mit UPDATE verändern wir einen bereits vorhandenen Datensatz. Das WHERE ist dabei absolut entscheidend – ohne es würden alle Zeilen der Tabelle geändert!
UPDATE schueler SET name = 'X' ohne WHERE würde den Namen aller Schüler:innen auf "X" setzen. Das WHERE grenzt den Update auf genau einen Datensatz ein.
Mehrere Spalten gleichzeitig ändern geht mit Komma:
DELETE
Mit DELETE FROM entfernen wir einen Datensatz permanent. Auch hier gilt: WHERE ist Pflicht!
Gelöschte Daten sind weg – es gibt keinen "Papierkorb". In echten Projekten setzt man oft ein is_deleted = 1-Flag, anstatt wirklich zu löschen ("Soft Delete").
CRUD = Create · Read · Update · Delete – die vier Grundoperationen jeder Datenbank
CREATE – Erstellen
READ – Lesen
UPDATE – Ändern
DELETE – Löschen
Das PDO-Muster für alle schreibenden Operationen (INSERT / UPDATE / DELETE)
Dynamische Webseiten 2 | eduhigh.net | Seminarunterlagen