File "withdraw.php"
Full Path: /home/quiczmwg/lightspringdigitals.com/dashboard/__MACOSX/withdraw.php
File size: 8.11 KB
MIME-type: text/x-php
Charset: utf-8
<?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"; ?>