PHP und MySQL

1.1 - Einführung in PHPPHP

  • Allgemeines über PHP
  • Anwendungen von PHP
  • Vorteile von PHP
  • Ausführungsort (Client-Server-Modell)
  • Sicherheit von PHP
  1. Lernhandout

1.2 - XAMPPEnvironment

  • Was ist XAMPP?
  • Unterschied zwischen DEV und PROD
  • XAMPP Paket und Tools
  • Aufruf über localhost
  • Das /htdocs Verzeichnis
  • Übung A: Installation von XAMPP
  1. Lernhandout

1.3 - EditorenEnvironment

  • Was ist ein guter Editor?
  • Anforderungen
  • Kostenlose und -pflichtige Editoren
  • IDE
  1. Lernhandout

Hilfreiche Links

  • Hier findest du nützliche Links zum Unterricht!
  1. php.net (Benutzerhandbuch)

 

 

2.1 - EinstiegPHP

  • PHP Code einbetten
  • PHP Markierung
  • HTML Konstrukt
  • Abspeichern als .php
  • Übung A: Eine Vorlage für PHP Übungen
  1. Lernhandout

2.2 - Ausgabe mit echoPHP

  • Der echo Befehl
  • Befehlsatzende mit Semikolon
  • Ausgabe von HTML mit echo
  • einfache und doppelte Anführungszeichen
  • entwerten mit Backslash
  • Zeilenschaltung mit \r\n
  1. Lernhandout

2.3 - VariablenPHP

  • Variablendeklaration mit $
  • Eigenschaften von Variablen
  • Stringverkettung
  • Ausgabe mit echo
    (Auswirkung von Anführungszeichen)
  • Gültigkeit von Variablen
  • Löschen unset
  1. Lernhandout

2.4 - PHP und MathematikPHP

  • Überblick der Operatoren
    (Addition, Subtraktion, usw.)
  • Überblick der mathematischen Funktionen
    (Wurzel, Runden, Zufallszahl, usw.)
  • Kombinieren von zwei Funktionen
  1. Lernhandout
  2. Mathematische Funktionen auf php.net

 

 

 

U 2.4 - Operatoren

  • Übung A: Palatschinken Rezept
  • Übung B: Hintergrundfarbe
  • Übung C: Optimale Bestellmenge
  1. Übungsblatt

3.1 - if VerzweigungPHP

  • Syntax von if(...) {...}
  • Vergleichsoperatoren
  • elseif(...) {...}
  • else {...}
  1. Lernhandout

3.2 - Logische OperatorenPHP

  • Was sind logische Operatoren?
  • Liste der logischen Operatoren
    (UND, ODER, Entwender-Oder)
  • Codebeispiel
  • Bedingte Gruppierung mit Klammern
  1. Lernhandout

3.3 - Wertübergabe $_POSTPHP

  • Werte mit $_POST übergeben
  • Das <form> Element
  • Die Attribute action und method
  • name Attribut des Eingabefeld
  • Werte zu sich selbst schicken
  • <form> ohne action
  • Variablenprüfung mit isset()
  1. Lernhandout

3.4 - Wertübergabe $_GETPHP

  • Werte mit $_GET übergeben
  • Aufbau einer URL
  • Auslesen des Query String
  • <form> mit method="get"
  1. Lernhandout

3.5 - Files lesenPHP

  • Lesen von Plain-Text
  • Arten von Plain-Text-Files
  • Erstelle die Datei inhalte.txt
  • Einlesen mit file_get_contents()
  • Prüfung auf Existenz
    mit file_exists()
  • Alternative is_readable()
  • Einlesen einer Webseite über die URL
  1. Lernhandout

3.6 - Files schreibenPHP

  • Schreiben in eine Datei
  • file_put_contents()
  • FILE_APPEND Flag
  • Einlesen mit file_get_contents()
  • Beispiel für ein einfaches Gästebuch
  1. Lernhandout
  2. Schreibrechte Linux/OSx

 

 

U 3.3 - $_POST Variablen

  • Übung A: Einfaches Anmeldeformular
  • Übung B: Kalorienrechner Grundumsatz
  • Übung C: Mathetrainer - Addition
  1. Übungsblatt

U 3.4 - $_GET Variablen

  • Übung A: Umsatzsteuer
  • Übung B: Palatschinken Rezept II
  • Übung C: URL Generator
  1. Übungsblatt

 

U 3.6 - Files schreiben

  • Übung A: Kommentarfunktion
  • Übung B: Farbwähler
  1. Übungsblatt

4.1 - FunktionenPHP

  • Was ist eine Funktion?
  • Wertübergabe und -übernahme
  • Syntax von function(...) {...}
  • Vergleichsoperatoren
  • Rückgabe mit return
  • Gültigkeit von Variablen
  • Globale Variablen
    $GLOBALS["name"]
  • Der exit; Befehl
  • Auslagern von PHP Code
  • Einbinden mit include
  1. Lernhandout

4.2 - FehlermeldungenPHP

  • Über das Fehlerreporting von PHP
  • Fehlerhandling für DEV und PROD
  • Alle Fehler und Warnungen anzeigen
    error_reporting(E_ALL);
    ini_set('display_errors', 1);
  • Fehler und Warnungen abschalten
    error_reporting(0);
    ini_set('display_errors', 0);
  • Kommentarfunktion für die Fehlersuche
    // Einzeiliges Kommentar
    /* Mehrzeiliges Kommentar */
  1. Lernhandout

4.3 - TypumwandlungPHP

  • PHP und Variablentypen
  • Typ ermitteln mit gettype($var)
  • Informationen über eine Variable
    var_dump($var)
  • Typ ändern mit settype($var, 'type')
  • Weitere Typumwandlungen
    intval($var) und floatval($var)
  • Prüfung auf einen nummerischen Wert
    is_numeric($var)
  1. Lernhandout

 

 

U 4.3 - Typumwandlung

  • Übung A: Variablentabelle
  • Übung B: Typbestimmung
  • Übung C: Besucherzähler
  1. Übungsblatt

5.1 - String FunktionenPHP

  • Wozu String Funktionen?
  • Suchen und ersetzen in einem String
    str_replace()
  • Weitere Funktionen zum Ersetzen str_ireplace()
    substr_replace()
  • Groß- und Kleinbuchstaben
    strtolower()
    strtoupper()
    ucfirst()
  • Leerzeichen und Whitespace entfernen
    trim()
  1. Lernhandout

5.2 - Zeichen escapenPHP

  • Wozu Zeichen escapen?
  • In HTML-Code wandeln
    htmlentities()
  • Parameter
    ENT_QUOTES
    ENT_HTML5
    "UTF-8"
  • HTML Code dekodieren
    html_entity_decode()
  • Zeilenschaltungen wandeln
    nl2br()
  1. Lernhandout
  2. HTML Zeichenreferenz

5.3 - TextoperationenPHP

  • Zeichenlänge ermitteln mit strlen()
  • Position eines Textteil ermitteln
    strpos()
  • Einen Teilstring ausschneiden
    substr()
  1. Lernhandout

 

U 5.2 - Zeichen escapen

  • Übung A: Kommentarfunktion II
  • Übung B: Schwarzes Brett
  • Übung C: Gästebuch
  1. Übungsblatt

 

6.1 - Arrays (indiziert)PHP

  • Was ist ein Array?
  • Indiziertes Array array()
  • Einen Wert ausgeben
  • Einen Wert zuweisen
  • Einen Wert hinzufügen
  • Einen Wert löschen mit unset()
  • Informationen ausgeben mit var_dump()
  1. Lernhandout

6.2 - Arrays (assoziiert)PHP

  • Syntax eines assoziierten Array
  • Werte ändern
  • Werte hinzufügen
  • Schlüssel-Wertpaare löschen
    unset()
  1. Lernhandout

6.3 - Arrays (multidim)PHP

  • Was ist ein mehrdimensionales Array?
  • Mehrdimensionales indiziertes Array
  • Mehrdimensionales assoziiertes Array
  • Zugriff auf Array-Werte mit Variablen
  1. Lernhandout

6.4 - Array FunktionenPHP

  • Array aus einem String erzeugen
    explode()
  • Element am Anfang hinzufügen
    array_unshift()
  • Element am Ende hinzufügen
    array_push()
  • Erstes Element entfernen
    array_shift()
  • Letztes Element entfernen
    array_pop()
  1. Lernhandout

6.5 - Arrays analysierenPHP

  • Elemente zählen
    count()
  • Summe von Elementwerten
    array_sum()
  • Einen Wert im Array suchen
    array_search()
  • Schlüssel-Prüfung
    array_key_exists()
  1. Lernhandout

6.6 - Arrays sortierenPHP

  • Sortieren mit sort()
  • Natürliches Sortieren mit natsort()
  • Infos ausgeben mit print_r()
  • Die Reihenfolge umdrehen mit array_reverse()
  • Zufallsgenerator für Arrays
    shuffle()
  1. Lernhandout

6.7 - Arrays und JSONPHP, JSON

  • Über die JavaScript Objekt Notation
  • In JSON wandeln mit json_encode()
  • In ein PHP Array wandeln mit
    json_decode()
  • Array-Wertübergabe mit POST und JSON
  1. Lernhandout

 

 

U 6.3 - Arrays (multidim)

  • Übung A: Die zwölf Monate
  • Übung B: Wochentage
  • Übung C: Obstvergleich
  1. Übungsblatt

 

 

 

U 6.7 - Arrays und JSON

  • Übung A: Newsroom
  • Übung B: Fünf-Sterne-Bewertung
  • Übung C: Fünf-Sterne-Bewertung II
  1. Übungsblatt

7.1 - for SchleifePHP

  • Was ist eine Zählschleife?
  • Die Syntax einer Zählschleife
    for(Start, Bedingung, Schritte) {...}
  • Einen Schritt überspringen
    continue;
  • Die Schleife verlassen
    break;
  1. Lernhandout

7.2 - while SchleifePHP

  • Was ist eine while-Schleife?
  • Syntax einer kopfgesteuerten Schleife
    while(Bedingung) {...}
  • Syntax einer fussgesteuerten Schleife
    do{...} while(Bedingung)
  • Endlosschleife mit Abbruchbedingung
    break;
  1. Lernhandout

7.3 - foreach SchleifePHP

  • Was ist eine foreach-Schleife?
  • Syntax einer foreach Schleife
    foreach($array as $wert) {...}
  • Syntax einer foreach Schleife mit Schlüssel
    foreach($array as $key => $wert) {...}
  • Verschachtelte foreach Schleife für mehrdimensionale Arrays
  1. Lernhandout

U 7.1 - for Schleife

  • Übung A: Multiplikationstabelle
  • Übung B: Schabrett Muster
  • Übung C: Mathe-Trainer - Bruchrechnung
  • Übung D: Römische Zahlen
  1. Übungsblatt

U 7.2 - while Schleife

  • Übung A: Primfaktoren-Zerlegung
  • Übung B: Bingo
  1. Übungsblatt

U 7.3 - foreach Schleife

  • Übung A: Fünf-Sterne-Bewertung II
  • Übung B: Einkaufsliste
  • Übung C: Hyperlinks einer Webseite
  1. Übungsblatt

8.1 - ZeitPHP

  • Wie arbeitet PHP mit der Zeit?
  • Was ist der UNIX-Timestamp?
  • Die aktuelle Zeit ermitteln mit time();
  • Mit dem UNIX-Timestamp rechnen
  • Den Timestamp eines bestimmten Datums ermitteln
    strtotime()
  • Das lokale Datum mit getdate()
  1. Lernhandout

8.2 - DatumPHP

  • Einen UNIX-Timestamp lesbar machen
  • Das date(); Objekt
  • Formatieren mit date();
  • Parameter-Liste für das Zeitmuster
  1. Lernhandout

8.3 - Zeit MethodenPHP

  • Wochentag und Monat in Deutsch
  • Die Alternative: strftime()
  • Zeitzonen
    date_default_timezone_set()
  • UNIX-Timestamp mit Mikrosekunden
    microtime(true)
  1. Lernhandout
  2. Zeitzonen (php.net)

 

 

U 8.3 - Zeit Methoden

  • Übung A: Welcher Wochentag
  • Übung B: Sternzeichen
  1. Übungsblatt

9.1 - headerPHP

  • Was ist ein HTTP-Header?
  • PHP Redirect (Weiterleitung)
    header("Location: URL")
  • Der exit; Befehl
  • Ein Redirect zum Schutz eines Verzeichnisses
  • Cache-Control (Zwischenspeichern verhindern)
  • Einen Download erzwingen
  1. Lernhandout

9.2 - CookiesPHP | JS

  • Was sind Cookies?
  • Cookies definieren mit setcookie()
  • Ein Cookie ausgeben
  • Cookies löschen
  • Cookies und JavaScript
  1. Lernhandout

9.3 - SessionPHP

  • Was ist eine Session?
  • Der Browser muss Cookies akzeptieren!
  • Session-ID für die Sitzung
  • Eine Session starten mit session_start()
  • Die Supergloblen $_SESSION Variablen
  • Session-Variablen löschen
  • Session-ID auslesen bzw. setzen
    session_id()
  • Session-Status session_status()
  1. Lernhandout

 

 

U 9.3 - Session

  • Übung A: Anmeldescript
  • Übung B: Passwortschutz mit .htaccess
  1. Übungsblatt

 

 


PHP © Thomas Maier, 2020 Graz |