Viewing File: /home/quiczmwg/lightspringdigitals.com/dashboard/withdraw.php

<?php 
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);

include "./include/head.php";
include "sidebar.php";
include "./include/navbar.php";

if (!isset($_SESSION['userid'])) {
    header("Location: login.php");
    exit();
}

$success = $error = "";

if ($_SERVER['REQUEST_METHOD'] === 'POST') {
    $userid = $_SESSION['userid'];
    $amount = floatval($_POST['amount']);
    $method = $_POST['withdraw_method'];

    if ($amount >= 5 && $method) { // minimum withdrawal: 5 USD
        // Get user balance
        $balResult = mysqli_query($conn, "SELECT account_balance FROM user_login WHERE userid = '$userid'");
        $userRow = mysqli_fetch_assoc($balResult);
        $current_balance = floatval($userRow['account_balance']);

        if ($current_balance < $amount) {
            $error = "❌ Insufficient balance.";
        } else {
            if ($method === 'wallet') {
                $wallet_type = mysqli_real_escape_string($conn, $_POST['wallet_type']);
                $wallet_address = mysqli_real_escape_string($conn, $_POST['wallet_address']);

                if ($wallet_type && $wallet_address) {
                    $stmt = $conn->prepare("INSERT INTO withdrawals (userid, amount, method, wallet_type, wallet_address, status, created_at)
                                            VALUES (?, ?, 'wallet', ?, ?, 'pending', NOW())");
                    $stmt->bind_param("sdss", $userid, $amount, $wallet_type, $wallet_address);
                } else {
                    $error = "❌ Wallet type and address are required.";
                }
            } elseif ($method === 'bank') {
                $bank_name = mysqli_real_escape_string($conn, $_POST['bank_name']);
                $account_name = mysqli_real_escape_string($conn, $_POST['account_name']);
                $account_number = mysqli_real_escape_string($conn, $_POST['account_number']);

                if ($bank_name && $account_name && $account_number) {
                    $stmt = $conn->prepare("INSERT INTO withdrawals (userid, amount, method, bank_name, account_name, account_number, status, created_at)
                                            VALUES (?, ?, 'bank', ?, ?, ?, 'pending', NOW())");
                    $stmt->bind_param("sdsss", $userid, $amount, $bank_name, $account_name, $account_number);
                } else {
                    $error = "❌ Bank details are required.";
                }
            }

            if (isset($stmt)) {
                if ($stmt->execute()) {
                    // Do NOT deduct balance yet; admin approves first
                    $success = "✅ Withdrawal request submitted successfully. We will review your request.";
                } else {
                    $error = "❌ Failed to submit request.";
                }
                $stmt->close();
            }
        }
    } else {
        $error = "❌ Invalid amount or method. Minimum withdrawal is $5.";
    }
}
?>

<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
<style>
    body { background: #f4f6fa; }
    .withdrawal-card { background: #fff; border-radius: 20px; box-shadow: 0 10px 25px rgba(0,0,0,0.08); padding: 2rem; }
    .btn-gradient { background: linear-gradient(135deg, #667eea, #764ba2); color: white; font-weight: 600; transition: 0.3s; }
    .btn-gradient:hover { filter: brightness(1.1); transform: scale(1.02); }
    .form-control { border-radius: 50px; padding: 0.75rem 1.25rem; }
    label { font-weight: 600; }
</style>

<div class="container py-5">
    <div class="row justify-content-center">
        <div class="col-lg-7">
            <div class="text-center mb-5">
                <h2 class="fw-bold text-dark">💸 Withdraw Funds</h2>
                <p class="text-muted">Fill in your account details to request a withdrawal. Admin will review your request.</p>
            </div>

            <?php if ($success) : ?>
                <div class="alert alert-success text-center"><?php echo $success; ?></div>
            <?php elseif ($error) : ?>
                <div class="alert alert-danger text-center"><?php echo $error; ?></div>
            <?php endif; ?>

            <div class="withdrawal-card">
                <form method="POST" class="row g-4" id="withdrawalForm">
                    <div class="col-12">
                        <label class="form-label">Withdrawal Amount (USD)</label>
                        <input type="number" name="amount" step="0.01" min="5" class="form-control" required placeholder="e.g. 150.00">
                    </div>

                    <div class="col-12">
                        <label class="form-label">Withdraw To</label>
                        <select name="withdraw_method" id="withdraw_method" class="form-control" onchange="toggleMethod()" required>
                            <option value="" disabled selected>Select method</option>
                            <option value="bank">Bank Account</option>
                            <option value="wallet">Crypto Wallet</option>
                        </select>
                    </div>

                    <!-- Bank Fields -->
                    <div id="bank_fields" class="row g-3" style="display: none;">
                        <div class="col-md-6">
                            <label class="form-label">Bank Name</label>
                            <input type="text" name="bank_name" class="form-control" placeholder="e.g. Bank of America">
                        </div>
                        <div class="col-md-6">
                            <label class="form-label">Account Name</label>
                            <input type="text" name="account_name" class="form-control" placeholder="e.g. John Doe">
                        </div>
                        <div class="col-12">
                            <label class="form-label">Account Number</label>
                            <input type="text" name="account_number" class="form-control" placeholder="e.g. 0123456789">
                        </div>
                    </div>

                    <!-- Wallet Fields -->
                    <div id="wallet_fields" class="row g-3" style="display: none;">
                        <div class="col-md-6">
                            <label class="form-label">Wallet Type</label>
                            <select name="wallet_type" class="form-control">
                                <option value="">Select wallet</option>
                                <option value="Bitcoin">Bitcoin</option>
                                <option value="Ethereum">Ethereum</option>
                                <option value="USDT (TRC20)">USDT (TRC20)</option>
                            </select>
                        </div>
                        <div class="col-md-6">
                            <label class="form-label">Wallet Address</label>
                            <input type="text" name="wallet_address" class="form-control" placeholder="Paste your wallet address">
                        </div>
                    </div>

                    <div class="col-12 text-center">
                        <button type="submit" class="btn btn-lg btn-gradient rounded-pill px-5">
                            <i class="fas fa-check-circle me-2"></i>Request Withdrawal
                        </button>
                    </div>
                </form>
            </div>

            <div class="text-center mt-4">
                <a href="dashboard.php" class="text-muted text-decoration-none small">
                    <i class="fas fa-arrow-left me-1"></i> Back to Dashboard
                </a>
            </div>
        </div>
    </div>
</div>

<script>
    function toggleMethod() {
        const method = document.getElementById("withdraw_method").value;
        document.getElementById("bank_fields").style.display = method === "bank" ? "flex" : "none";
        document.getElementById("wallet_fields").style.display = method === "wallet" ? "flex" : "none";
    }
</script>

<?php include "footer.php"; ?>
Back to Directory File Manager
<