Einleitung

Dieses Seminar vermittelt die fundamentalen Konzepte der serverseitigen Webentwicklung mit PHP. Teilnehmer erlernen die grundlegende Syntax, die Verarbeitung von Formulardaten, das Sitzungsmanagement sowie den sicheren Umgang mit Benutzereingaben. Ziel ist es, dynamische und interaktive Webseiten von Grund auf zu verstehen und selbstständig zu entwickeln.

Zielgruppe & Voraussetzungen

Zielgruppe: Angehende Webentwickler, Webdesigner und Quereinsteiger in die serverseitige Programmierung.
Voraussetzungen: Grundlegende Kenntnisse in HTML und CSS. Programmier-Vorerfahrungen sind hilfreich, aber nicht zwingend erforderlich.

Detaillierte Inhalte

Einführung und Entwicklungsumgebung

  • Funktionsweise von dynamischen Webseiten (Client-Server-Modell)
  • Einrichtung einer lokalen Entwicklungsumgebung (z. B. XAMPP, DDEV)
  • Grundlegende PHP-Syntax und Einbettung von PHP-Code in HTML
  • Ausgabe von Daten (echo, print, var_dump)
  • Konfiguration und Fehleranalyse (php.ini, Error Reporting)

Variablen, Datentypen und Operatoren

  • Deklaration und Initialisierung von Variablen
  • Konstanten definieren
  • Skalare und zusammengesetzte Datentypen (String, Integer, Float, Boolean, Null)
  • Typumwandlung (Type Casting)
  • Operatoren: Arithmetisch, Zuweisung, Vergleich, Logisch, String-Verkettung

Kontrollstrukturen

  • Bedingte Anweisungen: if, else, elseif
  • Verzweigungen: switch und match (ab PHP 8)
  • Ternärer Operator und Null-Koaleszenz-Operator (??)
  • Schleifen: for, while, do-while, foreach
  • Schleifensteuerung (break, continue)

Funktionen

  • Definition und Aufruf von benutzerdefinierten Funktionen
  • Parameterübergabe: Call-by-Value vs. Call-by-Reference
  • Standardwerte für Parameter (Default-Werte)
  • Rückgabewerte (return)
  • Gültigkeitsbereiche von Variablen (Variable Scope, global)
  • Typdeklarationen (Type Hinting) und Strict-Types-Modus

Arrays (Datenstrukturen)

  • Indizierte (numerische) Arrays
  • Assoziative Arrays (Schlüssel-Wert-Paare)
  • Mehrdimensionale Arrays
  • Iteration über Arrays
  • Wichtige Array-Funktionen (z. B. Sortierung, Manipulation, Suche)

Formularverarbeitung und Sicherheit

  • Unterschied zwischen den HTTP-Methoden GET und POST
  • Auslesen von Formulardaten ($_GET, $_POST, $_REQUEST)
  • Validierung von Benutzereingaben
  • Sicherheitsaspekte: Verhinderung von Cross-Site Scripting (XSS) via htmlspecialchars()
  • Filter-Funktionen (Sanitization und Validation)

Zustandsverwaltung (Sessions und Cookies)

  • Funktionsweise des zustandslosen HTTP-Protokolls
  • Setzen, Auslesen und Löschen von Cookies
  • Session-Management: Starten, Daten speichern, Session beenden
  • Sicherheitshinweise zu Sessions (Session Hijacking)

Dateisystem und Modularisierung

  • Einbinden externer Dateien (include, require, include_once, require_once)
  • Dateien öffnen, lesen, schreiben und schließen
  • Überprüfung von Datei- und Verzeichnisrechten

Datenbankanbindung (Einführung)

  • Einführung in PHP Data Objects (PDO)
  • Verbindungsaufbau zu einer MySQL/MariaDB-Datenbank
  • Grundlegende Ausführung von SQL-Statements

Dauer 3 Tage