16 von 16

Referenz · Kapitel 16 von 16

PHP · MySQL · HTML/CSS – Schritt für Schritt

Referenz

zertifizierung-Checkliste

Auszug aus einer typischen Webshop-Prüfarbeit. Was von der zertifizierung-Angabe schon durch dieses Tutorial abgedeckt ist – und was noch offen bleibt.

AnforderungWo umgesetzt
Datenbank-Design als Skizze + ZeitschätzungKapitel 1, Skizze auf Papier machen
Produktliste mit Bild und Bezeichnungindex.php
Detailansicht mit allen Eigenschaftenproductdetail.php
Admin: sicherer Loginlogin.php + Rollen-Check
Admin: Produkte hinzufügen, bearbeiten, freigeben, löschenstatistiken.php (bearbeiten evtl. noch ergänzen)
Validierung: keine Fehleingaben, Artikelcode uniquestatistiken.php + UNIQUE-Constraint in DB
Datenanbindung via Datenbankdurchgehend via PDO
Einfaches, sicheres UInavbar.php + separate Seiten
Bestellvorgang mit Login + Warenkorbcart_*, warenkorb.php, checkout.php
Rechnungserstellungcheckout.php (drucken via Strg+P)
Statistik: Top 5 meistbestelltSQL-Cheatsheet #11
Statistik: 5 am seltensten bestelltSQL-Cheatsheet #12
Statistik: Bestellverlauf 4 WochenSQL-Cheatsheet #13
Nur über Admin-Bereich zugänglichRollen-Check in statistiken.php
Auf beliebigen Geräten verwendbarMeta-Viewport-Tag, ggf. Media Queries
Code kommentiert und strukturiertdurchgehend
Was noch offen ist:
– E-Mail-Versand der Rechnung (mit mail(), falls SMTP konfiguriert)
– Bearbeitungs-Formular für bestehende Produkte (analog zum Anlegen)
– Getrennte Rechnungs- und Lieferadresse (extra Tabelle oder Felder in users)
– Zahlung "per Rechnung / Kreditkarte" (im Realprojekt komplex, für zertifizierung reicht Radio-Button ohne Funktion)
Häufigste Prüfer-Fragen zu diesem Projekt:
– Warum Prepared Statements? (SQL Injection)
– Warum password_hash() und nicht md5? (Salt, Geschwindigkeit)
– Warum htmlspecialchars()? (XSS)
– Was ist eine Transaktion? (Atomicity beim Bestellen)
– Warum InnoDB? (FK + Transaktionen)
– Unterschied query() vs. prepare()? (mit vs. ohne User-Input)
– Was passiert bei 1 - freigeben? (Toggle-Trick)
– Warum FK auf der "n"-Seite? (Datenbank-Design-Grundlage)
– Was macht session_regenerate_id()? (Session Fixation Schutz – für Bonuspunkte einbauen)

16 Kapitel · ein Projekt

Der Codeinander Lernpfad

DEEN in Vorbereitung

Grundlagen

01GrundlagenIntro & Setup 02GrundlagenDatenbank-Schema 03Grundlagendb.php – Verbindung

Auth

04Authregister.php 05Authlogin.php 06Authlogout.php

Shop

07Shopnavbar.php 08Shopindex.php – Liste 09Shopproductdetail.php

Warenkorb

10Warenkorbcart_add.php 11Warenkorbwarenkorb.php 12Warenkorbcart_remove.php

Admin

13Adminstatistiken.php + Admin 14Admincheckout.php + Rechnung

Referenz

15ReferenzSQL-Cheatsheet 16Referenzzertifizierung-Checkliste