Methode nicht erlaubt.
' . fuss(); exit; } $fehler = []; $werte = ['name' => '', 'email' => '', 'nachricht' => '']; $status = 200; if ($methode === 'POST') { if (!csrf_pruefen($_POST['csrf'] ?? null)) { http_response_code(403); echo kopf('Abgelehnt') . 'Ungueltiges oder fehlendes Sicherheits-Token. Bitte das Formular neu laden.
' . fuss(); exit; } foreach (array_keys($werte) as $feld) { $roh = $_POST[$feld] ?? ''; $werte[$feld] = is_string($roh) ? trim($roh) : ''; } if ($werte['name'] === '') { $fehler['name'] = 'Bitte einen Namen angeben.'; } elseif (mb_strlen($werte['name']) > 100) { $fehler['name'] = 'Der Name darf hoechstens 100 Zeichen lang sein.'; } if (filter_var($werte['email'], FILTER_VALIDATE_EMAIL) === false || mb_strlen($werte['email']) > 200) { $fehler['email'] = 'Bitte eine gueltige E-Mail-Adresse angeben.'; } $laenge = mb_strlen($werte['nachricht']); if ($laenge < 5 || $laenge > 2000) { $fehler['nachricht'] = 'Die Nachricht muss 5 bis 2000 Zeichen lang sein.'; } if (!$fehler) { $stmt = db()->prepare('INSERT INTO nachrichten (name, email, nachricht) VALUES (:n, :e, :m)'); $stmt->execute([':n' => $werte['name'], ':e' => $werte['email'], ':m' => $werte['nachricht']]); csrf_verbrauchen(); header('Location: /kontakt.php?ok=1', true, 303); exit; } $status = 422; } http_response_code($status); echo kopf('Kontakt'); echo 'Danke, Ihre Nachricht ist angekommen.
'; } if ($fehler) { echo '