Empfangene POST-Daten:";
echo "";
// Durch alle POST-Variablen iterieren
foreach ($_POST as $key => $value) {
if (is_array($value)) {
// Falls es ein Array ist, z. B. bei Checkboxen oder multiple-Selects
$escapedValues = array_map(function($v) {
return htmlspecialchars($v, ENT_QUOTES, 'UTF-8');
}, $value);
echo "- $key: " . implode(', ', $escapedValues) . "
";
} else {
// Standardfall: String escapen
$escapedValue = htmlspecialchars($value, ENT_QUOTES, 'UTF-8');
echo "- $key: $escapedValue
";
}
}
echo "
";
$date = isset($_POST['date']) ? trim($_POST['date']) : '';
$user_id = isset($_POST['user_id']) ? trim($_POST['user_id']) : '';
$person = isset($_POST['person']) ? $_POST['person'] : '';
$category = isset($_POST['category']) ? trim($_POST['category']) : '';
$subject = isset($_POST['subject']) ? trim($_POST['subject']) : '';
$amount = isset($_POST['amount']) ? (float)$_POST['amount'] : 0.0;
$payment_method = isset($_POST['payment_method']) ? trim($_POST['payment_method']) : '';
$jsonPersonen = json_encode($person);
// SQL-Statement vorbereiten
try {
$stmt = $pdo->prepare("
INSERT INTO entries (date, user_id, person, category, subject, amount, payment_method)
VALUES (:date, :user_id, :person, :category, :subject, :amount, :payment_method)
");
$stmt->bindParam(':date', $date);
$stmt->bindParam(':user_id', $user_id);
$stmt->bindParam(':person', $jsonPersonen);
$stmt->bindParam(':category', $category);
$stmt->bindParam(':subject', $subject);
$stmt->bindParam(':amount', $amount);
$stmt->bindParam(':payment_method', $payment_method);
ob_start();
$stmt->debugDumpParams();
$output = ob_get_clean();
echo "SQL: " . $output . "
";
// Statement ausführen
$stmt->execute();
$data_saved = "true";
} catch (PDOException $e) {
// Fehlerbehandlung
$data_saved = "Fehler: "; // . $e->getMessage();
}
echo "SQL: " . $data_saved . "
";
}
try {
// Alle Benutzer aus der Tabelle 'users' laden
$stmtUsers = $pdo->prepare("SELECT * FROM users;");
$stmtUsers->execute();
$users = $stmtUsers->fetchAll(PDO::FETCH_ASSOC);
foreach ($users as $user) {
if ($user['id'] == $_SESSION['user_id']) {
$loggedInUserId = $user['id'];
break; // Schleife beenden, sobald gefunden
}
}
// Alle Kategorien aus der Tabelle 'categories' laden
$stmtCategories = $pdo->prepare("SELECT * FROM categories");
$debug = $stmtCategories->queryString; // Enthält das reine SQL-Statement
$stmtCategories->execute();
$categories = $stmtCategories->fetchAll(PDO::FETCH_ASSOC);
} catch (PDOException $e) {
$data_saved = "Fehler: "; // . $e->getMessage();
}
// Aktuelles Datum im Format YYYY-MM-DD erzeugen
$currentDate = date('Y-m-d');
?>
"; ?>