<?php
session_start();

// Sicherstellen, dass der Benutzer eingeloggt ist
if (!isset($_SESSION["user_id"])) {
    header("Location: login.php");
    exit;
}

$servername = "sql7.freesqldatabase.com";
$username = "sql7770556";
$password = "CFqdPQD4a1";
$dbname = "sql7770556";

$conn = new mysqli($servername, $username, $password, $dbname, 3306);
if ($conn->connect_error) die("Verbindung fehlgeschlagen: " . $conn->connect_error);

$user_id = $_SESSION["user_id"];

// Guthaben abrufen
$stmt = $conn->prepare("SELECT username, balance FROM users WHERE id = ?");
$stmt->bind_param("i", $user_id);
$stmt->execute();
$stmt->bind_result($username, $balance);
$stmt->fetch();
$stmt->close();

echo "<h2>👋 Willkommen, $username</h2>";
echo "<p>💰 Guthaben: " . number_format($balance, 2, ',', '.') . " €</p>";

if ($_SERVER["REQUEST_METHOD"] == "POST") {
    $receiver = $_POST["receiver"];
    $amount = $_POST["amount"];

    // Prüfen, ob der Betrag positiv und nicht größer als das Guthaben ist
    if ($amount <= 0) {
        echo "❌ Der Betrag muss größer als 0 sein!";
    } elseif ($amount > $balance) {
        echo "❌ Du hast nicht genug Guthaben für diese Transaktion!";
    } else {
        // Empfänger suchen
        $stmt = $conn->prepare("SELECT id FROM users WHERE username = ?");
        $stmt->bind_param("s", $receiver);
        $stmt->execute();
        $stmt->bind_result($receiver_id);
        $stmt->fetch();
        $stmt->close();

        if ($receiver_id) {
            // Geld senden
            $stmt = $conn->prepare("UPDATE users SET balance = balance - ? WHERE id = ?");
            $stmt->bind_param("di", $amount, $user_id);
            $stmt->execute();
            $stmt->close();

            $stmt = $conn->prepare("UPDATE users SET balance = balance + ? WHERE id = ?");
            $stmt->bind_param("di", $amount, $receiver_id);
            $stmt->execute();
            $stmt->close();

            // Transaktion speichern
            $stmt = $conn->prepare("INSERT INTO transactions (sender_id, receiver_id, amount) VALUES (?, ?, ?)");
            $stmt->bind_param("iid", $user_id, $receiver_id, $amount);
            $stmt->execute();
            $stmt->close();

            echo "✅ Geld gesendet an $receiver!";
        } else {
            echo "❌ Empfänger nicht gefunden!";
        }
    }
}
$conn->close();
?>

<form method="POST">
    <input type="text" name="receiver" placeholder="Empfänger (Benutzername)" required>
    <input type="number" name="amount" placeholder="Betrag (€)" step="0.01" required>
    <button type="submit">Senden</button>
</form>
