PHP & MySQL Schnelleinstieg

Book description

Programmieren lernen in 14 Tagen
Einfach und ohne Vorkenntnisse

  • PHP programmieren lernen ohne Vorkenntnisse
  • Alle Grundlagen für den professionellen Einsatz
  • Einfache Praxisbeispiele und Übungsaufgaben
  • Inklusive kostenlosem E-Book zum Download

Mit diesem Buch gelingt Ihnen der einfache Einstieg in die Webentwicklung mit PHP und MySQL.

Alle Grundlagen werden in 14 Kapiteln anschaulich und leicht nachvollziehbar anhand von Codebeispielen erläutert. Übungsaufgaben am Ende der Kapitel helfen Ihnen, das neu gewonnene Wissen schnell praktisch anzuwenden und zu vertiefen.

Der Autor führt Sie Schritt für Schritt in die Welt der Programmierung ein: von den Grundlagen der Programmierung mit PHP über Objektorientierung bis zur Entwicklung dynamischer Webseiten mit MySQL-Datenbanken. Dabei lernen Sie ebenfalls, was guten Programmierstil ausmacht und wie sich Fehler von vornherein vermeiden lassen.

So sind Sie perfekt auf die Webentwicklung mit PHP und MySQL im professionellen Umfeld vorbereitet.


Aus dem Inhalt:
  • Alle Grundlagen einfach erläutert
  • Dynamische Webseiten und Formulare
  • Webseiten im Internet veröffentlichen
  • Anbindung einer Webschnittstelle (API)
  • Cookies und Sessions
  • Objektorientierte Programmierung
  • Einsatz mit MySQL-Datenbanken
  • Abschlussprojekt: Programmierung eines Blogs
  • Programmcode, Lösungen und Glossar zum Download

Über den Autor:
Philipp Rieber entwickelt seit über 20 Jahren Internet-Anwendungen und begeistert gerne andere Menschen dafür. Als Software-Architekt gestaltet er seit ihrer Gründung die erste digitale Krankenversicherung Deutschlands.

Table of contents

  1. Impressum
  2. Inhalt
  3. Einleitung
    1. E.1 Programmieren lernen in 14 Tagen
    2. E.2 Der Aufbau des Buchs
    3. E.3 Programmtexte und Lösungen zum Download
    4. E.4 Fragen und Feedback
  4. Erste Schritte mit PHP
    1. 1.1 Wofür wird PHP eingesetzt?
      1. 1.1.1 PHP zur Erzeugung dynamischer Webseiten
      2. 1.1.2 PHP zur Bereitstellung von Webservices
      3. 1.1.3 Kommandozeilenprogramme mit PHP
        1. Wiederkehrende Aufgaben mit Cronjobs erledigen
        2. Hilfsprogramme für die Entwicklung
    2. 1.2 Stärken von PHP
    3. 1.3 Schwächen von PHP
    4. 1.4 Was ist für die Entwicklung mit PHP notwendig?
    5. 1.5 Quelltext und PHP-Interpreter
    6. 1.6 Kommandozeile nutzen
      1. 1.6.1 Kommandozeile starten
        1. Windows
        2. macOS
        3. Linux
      2. 1.6.2 Kommandozeilen-Einmaleins
    7. 1.7 PHP installieren
      1. 1.7.1 Windows
      2. 1.7.2 macOS
      3. 1.7.3 Linux
    8. 1.8 Quelltext-Editor verwenden: Visual Studio Code
    9. 1.9 Das erste PHP-Skript ausführen
    10. 1.10Basiswissen in der Praxis
      1. 1.10.1 <?php PHP-Code markieren ?>
      2. 1.10.2 PHP-Anweisungen mit dem Semikolon beenden;
      3. 1.10.3 PHP-Code kommentieren
      4. 1.10.4 PHP-Code auf die Schnelle testen
    11. 1.11 Wie entstand PHP?
    12. 1.12 Übungen
      1. Übung 1
      2. Übung 2
  5. Variablen, Datentypen und Konstanten
    1. 2.1 Daten in einer Variablen erfassen
      1. 2.1.1 EVA: Grundprinzip der Datenverarbeitung
      2. 2.1.2 Variablen erzeugen und verwenden
      3. 2.1.3 Regeln für Variablennamen
      4. 2.1.4 Datentypen und die »dynamische Typisierung«
    2. 2.2 Einfache Datentypen
      1. 2.2.1 Daten wörtlich aufschreiben: Literale
      2. 2.2.2 Zeichenkette (String)
        1. Strings in einfachen Anführungszeichen
        2. Doppelte Anführungszeichen
        3. Der Verknüpfungsoperator
        4. Verknüpfender Zuweisungsoperator
      3. 2.2.3 Ganzzahl (Integer)
        1. Arithmetische Operationen
        2. Arithmetische Zuweisungsoperatoren
        3. Inkrement- und Dekrement-Operatoren
      4. 2.2.4 Gleitkommazahl (Float)
      5. 2.2.5 Wahrheitswert (Boolean)
    3. 2.3 Der spezielle Datentyp: NULL
    4. 2.4 Der vielseitige Datentyp: Array
      1. 2.4.1 Numerisch indizierte Arrays
      2. 2.4.2 Assoziative Arrays
      3. 2.4.3 Mehrdimensionale Arrays
    5. 2.5 Datentypen umwandeln
      1. 2.5.1 Type Juggling
      2. 2.5.2 Type Casting
    6. 2.6 Programmstrukturen
      1. 2.6.1 Ausdrücke
      2. 2.6.2 Anweisungen
    7. 2.7 Konstanten
      1. 2.7.1 Literale Konstanten
      2. 2.7.2 Benannte Konstanten
      3. 2.7.3 Vordefinierte Konstanten
      4. 2.7.4 Magische Konstanten
    8. 2.8 Übungen
      1. Übung 1
      2. Übung 2
      3. Übung 3
      4. Übung 4
      5. Übung 5
  6. Programmablauf mit Kontrollstrukturen steuern
    1. 3.1 Programmablauf verzweigen
      1. 3.1.1 Bedingte Anweisung mit if
      2. 3.1.2 Beispiel: Passwortabfrage
      3. 3.1.3 Verzweigung mit if...else
      4. 3.1.4 Beispiel: Eintrittskarte Zoo
      5. 3.1.5 Der ternäre Operator ?:
      6. 3.1.6 Fallunterscheidung mit if…elseif...else
      7. 3.1.7 Beispiel: Bankautomat
    2. 3.2 Bedingungen formulieren
      1. 3.2.1 Vergleichoperatoren
      2. 3.2.2 Gleichheit (==) und Identität (===)
      3. 3.2.3 Logische Operatoren
      4. 3.2.4 Beispiel: Schaltjahrprüfung
    3. 3.3 Programmabschnitte mit Schleifen wiederholen
      1. 3.3.1 Arrays durchlaufen – foreach
      2. 3.3.2 Beispiel: Getränkekarte
      3. 3.3.3 Zählschleife – for
      4. 3.3.4 Beispiel: Countdown
      5. 3.3.5 Bedingte Wiederholung – while
      6. 3.3.6 Beispiel: Lostopf
      7. 3.3.7 Schleifen abbrechen – break
      8. 3.3.8 Schleife beim nächsten Durchlauf fortsetzen – continue
      9. 3.3.9 Endlosschleifen
    4. 3.4 Alternative Syntax für Kontrollstrukturen
    5. 3.5 Übungen
      1. Übung 1
      2. Übung 2
      3. Übung 3
      4. Übung 4
      5. Übung 5
  7. Programmierfehler und PHP-Konfiguration
    1. 4.1 Programmierfehler
      1. 4.1.1 Syntaxfehler
      2. 4.1.2 Laufzeitfehler
      3. 4.1.3 Logische Fehler
    2. 4.2 PHP konfigurieren: die php.ini-Datei
      1. 4.2.1 Was ist die php.ini-Datei?
      2. 4.2.2 Wo ist die php.ini und wie wird sie bearbeitet?
      3. 4.2.3 PHP-Einstellungen zur Laufzeit
      4. 4.2.4 PHP-Erweiterungen aktivieren
    3. 4.3 Fehlerstufen
    4. 4.4 Fehlersichtbarkeit einstellen
    5. 4.5 Übungen
      1. Übung 1
      2. Übung 2
  8. Funktionen
    1. 5.1 Native Funktionen aus der PHP-Bibliothek verwenden
      1. 5.1.1 Signatur einer Funktion
      2. 5.1.2 Rückgabewerte
        1. Eindeutiger Rückgabewert
        2. Mehrdeutiger Rückgabedatentyp
        3. Kein Rückgabewert: void
      3. 5.1.3 Mit Zahlen arbeiten: Mathematische Funktionen
      4. 5.1.4 Mit Texten arbeiten: String-Funktionen
      5. 5.1.5 Beispiel: E-Mail validieren
      6. 5.1.6 Mit Arrays arbeiten: Array-Funktionen
      7. 5.1.7 Beispiel: Passwort generieren
      8. 5.1.8 Die Unixzeit und Datumsfunktionen
        1. Unixzeit
        2. Datum formatieren
        3. Zeitstempel erzeugen
        4. Zeitzone
    2. 5.2 Eigene Funktionen definieren
      1. 5.2.1 Hinweise auf Datentypen: Type Hints
      2. 5.2.2 Geltungsbereich von Variablen
    3. 5.3 Übungen
      1. Übung 1
      2. Übung 2
      3. Übung 3
  9. Webseiten entwickeln und veröffentlichen
    1. 6.1 Was geschieht beim Abruf einer Webseite?
      1. 6.1.1 Adressen für Computer: IP-Adressen
      2. 6.1.2 Adressbuch für Computer: das Domain Name System (DNS)
      3. 6.1.3 Computer als Dienstleister im Internet: Host, Server und Client
      4. 6.1.4 Dienste auf einem Computer unterscheiden: Ports
    2. 6.2 Webserver auf dem eigenen Computer betreiben
      1. 6.2.1 Domainname für den eigenen Rechner: localhost
      2. 6.2.2 Lokalen Webserver starten
      3. 6.2.3 Das Dokument-Wurzelverzeichnis: Document-Root
      4. 6.2.4 Automatisch angezeigte Dateien: Index-Dateien
      5. 6.2.5 Entwicklungszyklus mit PHP auf dem Webserver
      6. 6.2.6 Infos über PHP anzeigen: phpinfo()
    3. 6.3 HTML-Grundgerüst
    4. 6.4 Anfragen und Antworten mit dem HTTP-Protokoll
      1. 6.4.1 Browser-Konsole nutzen
      2. 6.4.2 HTTP-Anfragen (Requests)
      3. 6.4.3 Header im superglobalen Array $_SERVER
      4. 6.4.4 HTTP-Antworten
      5. 6.4.5 HTTP als zustandsloses Protokoll
    5. 6.5 Webspace mieten und Webseite veröffentlichen
      1. 6.5.1 Anbieter finden
      2. 6.5.2 Webspace in der Praxis
    6. 6.6 Übungen
      1. Übung 1
      2. Übung 2
  10. Dynamische Webseiten und Formulare
    1. 7.1 $_GET: Daten aus dem Query-String der URL
      1. 7.1.1 Der Query-String in Hyperlinks
      2. 7.1.2 Niemals Benutzereingaben vertrauen: Eingabevalidierung
        1. URL-Parameter nicht gesetzt
        2. URL-Parameter ist keine Zahl (nicht numerisch)
        3. URL-Parameter ist keine sinnvolle Zahl
        4. Zusammenfassung
    2. 7.2 Formulardaten im Query-String der URL übermitteln
      1. 7.2.1 Formular und Auswertung in einem Skript zusammenfassen
      2. 7.2.2 Niemals Eingabedaten vertrauen: Ausgabe-Maskierung
    3. 7.3 Einsatzgebiete der GET-Methode
      1. Vorteile
      2. Nachteile
    4. 7.4 $_POST: Formulardaten unsichtbar übermitteln
      1. Neu laden von POST-Anfragen
    5. 7.5 Vergleich zwischen GET und POST
    6. 7.6 Übungen
      1. Übung 1
      2. Übung 2
      3. Übung 3
      4. Übung 4
  11. Mit Dateien arbeiten
    1. 8.1 Quelltext in mehreren Dateien strukturieren
      1. 8.1.1 Quelltext-Dateien einbinden und ausführen
      2. 8.1.2 Geltungsbereich von Variablen bei eingebundenen Dateien
      3. 8.1.3 Dateien außerhalb der Document-Root einbinden
    2. 8.2 Dateien schreiben und lesen
      1. 8.2.1 Dateien schreiben: file_put_contents()
      2. 8.2.2 Dateien lesen: file_get_contents()
      3. 8.2.3 Dateien als Array einlesen: file()
    3. 8.3 Dateien über das Internet laden
    4. 8.4 Datei-Uploads: $_FILES
      1. 8.4.1 $_POST und $_FILES
      2. 8.4.2 Uploads verarbeiten
      3. 8.4.3 Upload-Fehler
      4. 8.4.4 php.ini-Einstellungen
      5. 8.4.5 Datei-Art prüfen (MIME-Type)
    5. 8.5 Datei-Zugriffsrechte
      1. 8.5.1 Warum Zugriffsrechte?
      2. 8.5.2 Klassische Unix-Zugriffsrechte
      3. 8.5.3 Zugriffrechte ändern
    6. 8.6 Übungen
      1. Übung 1
      2. Übung 2
      3. Übung 3
      4. Übung 4
  12. Cookies und Sessions
    1. 9.1 Cookies
      1. 9.1.1 Wie entsteht ein Cookie?
      2. 9.1.2 Cookie-Daten lesen: $_COOKIE
      3. 9.1.3 Beispiel: Sprachwechsler
        1. Die fertige Webseite
        2. Quelltext
      4. 9.1.4 Cookies mit Ablaufdatum
      5. 9.1.5 Cookies löschen
      6. 9.1.6 Cookies im Browser verwalten
    2. 9.2 Sessions: Benutzersitzungen
      1. 9.2.1 Eine Session starten
      2. 9.2.2 Eine Session wieder aufnehmen
      3. 9.2.3 Beispiel: Login
        1. So sieht die fertige Website aus
        2. Quelltext
      4. 9.2.4 Beispiel: »Flash«-Nachrichten
        1. So sieht die fertige Website aus
        2. Quelltext
    3. 9.3 Übungen
      1. Übung 1
      2. Übung 2
  13. Einstieg in die objektorientierte Programmierung (OOP)
    1. 10.1 Grenzen der prozeduralen Programmierung
    2. 10.2 Grundbegriffe der »OOP«
      1. 10.2.1 Klasse (Class)
      2. 10.2.2 Objekt (Object)
      3. 10.2.3 Eigenschaft (Property)
      4. 10.2.4 Methode (Method)
      5. 10.2.5 Die spezielle Variable $this
      6. 10.2.6 Konstruktor: __construct()
      7. 10.2.7 Sichtbarkeit (Visibility)
      8. 10.2.8 Das Geheimnisprinzip: Daten kapseln
    3. 10.3 Vererbung
    4. 10.4 Ausnahmen (Exceptions)
    5. 10.5 Native Objektorientierung in PHP
      1. 10.5.1 Datum & Zeit: Prozedurale Programmierung
      2. 10.5.2 Datum & Zeit: Objektorientierte Programmierung
    6. 10.6 Übungen
      1. Übung 1
      2. Übung 2
      3. Übung 3
  14. Datenverwaltung mit MySQL
    1. 11.1 Was ist eine relationale Datenbank?
    2. 11.2 Was ist ein Datenbankmanagementsystem?
    3. 11.3 Was ist SQL?
    4. 11.4 Erste Schritte mit MySQL
      1. 11.4.1 Warum MySQL?
      2. 11.4.2 MySQL installieren
        1. Windows
        2. macOS
        3. Linux
      3. 11.4.3 Verbindung zu MySQL aufnehmen und erste Befehle ausführen
    5. 11.5 Kommentare
    6. 11.6 Datenbanken
      1. 11.6.1 Datenbank erzeugen
      2. 11.6.2 Datenbank löschen
    7. 11.7 Tabellen
      1. 11.7.1 Tabelle anlegen
      2. 11.7.2 Spaltentypen
      3. 11.7.3 Spaltenoptionen
        1. Optionale Werte: NULL oder NOT NULL
        2. Zahlen mit oder ohne Vorzeichen: UNSIGNED
        3. Vorgabewerte: DEFAULT
        4. Primärschlüssel: PRIMARY KEY
        5. Automatische Primärschlüssel mit AUTO_INCREMENT
      4. 11.7.4 Tabellenstruktur anzeigen
      5. 11.7.5 Tabellen löschen
    8. 11.8 Bezeichner
      1. 11.8.1 Gültige Bezeichner
      2. 11.8.2 Punkt-Notation
    9. 11.9 Daten schreiben, lesen, ändern und löschen
      1. 11.9.1 Daten einfügen: INSERT INTO
      2. 11.9.2 Daten abfragen: SELECT
        1. Daten aller Spalten abrufen
        2. Ergebnis sortieren
        3. Ergebnis filtern
      3. 11.9.3 Daten ändern: UPDATE
      4. 11.9.4 Daten löschen: DELETE
    10. 11.10 Übungen
      1. Übung 1
      2. Übung 2
      3. Übung 3
  15. Fortgeschrittene Daten­bankabfragen mit MySQL
    1. 12.1 Grafische Datenbankverwaltung mit phpMyAdmin
    2. 12.2 MySQL beim Webhoster
    3. 12.3 Fortgeschrittene Datenabfragen
      1. 12.3.1 Vergleichsoperatoren
        1. Anführungszeichen
        2. Suche mit LIKE
        3. Vergleiche mit NULL
      2. 12.3.2 Logische Verknüpfungen
      3. 12.3.3 LIMIT: Abfrageergebnisse begrenzen
    4. 12.4 Alias-Namen für Tabellenspalten
    5. 12.5 SQL-Funktionen
      1. 12.5.1 Skalare Funktionen
        1. Zeichenketten-Funktionen
        2. Numerische Funktionen und Operatoren
        3. Datumsfunktionen
      2. 12.5.2 Daten zusammenfassen: Aggregatfunktionen
    6. 12.6 Performance und Indizes
    7. 12.7 Übungen
      1. Übung 1
      2. Übung 2
  16. PHP und MySQL kombinieren
    1. 13.1 PHP mit MySQL verbinden
      1. 13.1.1 Datenbankverbindung mit PDO
      2. 13.1.2 Verbindung mit MySQL herstellen
      3. 13.1.3 SQL-Befehle ausführen
        1. Einen SQL-Befehl mit der Methode PDO::exec() ausführen
        2. Datensätze mit der Methode PDO::query() abfragen
        3. Prepared Statements mit PDO::prepare(): Vorbereitete Anweisungen
    2. 13.2 Beispiel: MySQL-Version abfragen
    3. 13.3 Beispiel: Benutzer-Accounts
      1. 13.3.1 Benutzer-Tabelle anlegen
      2. 13.3.2 Benutzer registrieren
      3. 13.3.3 Login
      4. 13.3.4 Login-Bereich
    4. 13.4 Passwörter sicher speichern
      1. 13.4.1 Passwort-Hash erzeugen
      2. 13.4.2 Passwort validieren
    5. 13.5 Sicherheitslücke: SQL-Injection
    6. 13.6 Übungen
      1. Übung 1
      2. Übung 2
      3. Übung 3
  17. Abschlussprojekt: Ein Blog programmieren
    1. 14.1 Installation
    2. 14.2 Übersicht: Das fertige Blog
    3. 14.3 Verwendete Techniken
      1. 14.3.1 Webdesign mit »Bootstrap«
      2. 14.3.2 Methodenaufrufe verketten
      3. 14.3.3 Letzte eingefügte Datensatz-ID ermitteln
      4. 14.3.4 POST-Anfrage erkennen
      5. 14.3.5 Versteckte Formularfelder
      6. 14.3.6 Composer
    4. 14.4 So funktioniert das Blog
      1. 14.4.1 Verzeichnisstruktur
      2. 14.4.2 Die verschiedenen Webseiten
      3. 14.4.3 Initialisierungsaufgaben
        1. Konfiguration mit Konstanten
        2. PHP-Einstellungen mit ini_set()
        3. Fehler zentral behandeln
        4. Eigene Funktionen
    5. 14.5 Anwendungsbeispiele
      1. 14.5.1 Startseite mit Artikelübersicht
      2. 14.5.2 Artikel anlegen
      3. 14.5.3 Artikel als PDF downloaden
      4. 14.5.4 Feedback als E-Mail versenden
    6. 14.6 Ausblick: Was kommt als Nächstes?
      1. 14.6.1 Namespaces (Namensräume)
      2. 14.6.2 Fortgeschrittene Entwicklungsumgebung mit XAMPP
      3. 14.6.3 Reguläre Ausdrücke
      4. 14.6.4 Frameworks
      5. 14.6.5 PHP-Standardsoftware: Content Management und Co.
      6. 14.6.6 Versionsverwaltung mit git und GitHub
      7. 14.6.7 Testing mit PHPUnit
    7. 14.7 Übungen
      1. Übung 1
      2. Übung 2
      3. Übung 3

Product information

  • Title: PHP & MySQL Schnelleinstieg
  • Author(s): Philipp Rieber
  • Release date: November 2021
  • Publisher(s): mitp Verlag
  • ISBN: 9783747503973