55 lines
1.6 KiB
PHP
55 lines
1.6 KiB
PHP
<?php
|
|
require_once __DIR__ . '/../includes/db_connect.php';
|
|
|
|
session_start();
|
|
|
|
$_SESSION['old'] = $_POST;
|
|
|
|
$return = $_POST['return'] ?? 'allgemein';
|
|
|
|
$kategorie = $_POST['kategorie'] ?? 'substantive';
|
|
$deutsch = trim($_POST['deutsch'] ?? '');
|
|
for($i = 0; $i < 7; $i++) {
|
|
$italienisch[$i] = trim($_POST['italienisch_' . $i] ?? '');
|
|
$farbe[$i] = $_POST['farbe_' . $i] ?? 'black';
|
|
}
|
|
|
|
if($deutsch === '') {
|
|
$_SESSION['error'] = "Das deutsche Wort darf nicht leer sein!";
|
|
header("Location: ../$return.php");
|
|
exit;
|
|
}
|
|
if($italienisch[0] === '') {
|
|
$_SESSION['error'] = "Das erste italienische Wort darf nicht leer sein!";
|
|
header("Location: ../$return.php");
|
|
exit;
|
|
}
|
|
|
|
insertDB($pdo, $kategorie, $deutsch, $italienisch, $farbe);
|
|
//unset($_SESSION['old']);
|
|
|
|
function insertDB(PDO $pdo, string $kategorie, string $deutsch, array $italienisch, array $farbe) {
|
|
try {
|
|
$pdo->beginTransaction();
|
|
|
|
$stmt = $pdo->prepare("SELECT id
|
|
FROM kategorie
|
|
WHERE LOWER(name) = LOWER(:kategorie);");
|
|
$stmt->execute(['kategorie' => $kategorie]);
|
|
$kategorie_id = $stmt->fetch(PDO::FETCH_ASSOC);
|
|
|
|
$pdo->commit();
|
|
|
|
return 0;
|
|
|
|
} catch(Exception $e) {
|
|
$pdo->rollBack();
|
|
echo "Fehler: " . $e->getMessage();
|
|
return 1;
|
|
}
|
|
}
|
|
|
|
$_SESSION['success'] = "neues Wort gespeichert";
|
|
header("Location: ../$return.php");
|
|
exit;
|
|
?>
|