🤩 File Manager - Mr.X
PHP:
8.3.33
Server:
Apache
OS:
Linux 5.14.0-611.49.1.el9_7.x86_64
User:
websparkit
Navigate
Upload:
Upload
New File
New Folder
Editing:change-password.php
<?php require_once __DIR__ . '/../includes/config.php'; require_once __DIR__ . '/../includes/db.php'; require_once __DIR__ . '/../includes/functions.php'; $page = 'change-password'; $page_title = 'Change Password'; if (!is_logged_in()) { header('Location: ' . SITE_URL . 'pages/login.php'); exit; } if ($_SERVER['REQUEST_METHOD'] == 'POST' && verify_csrf($_POST[CSRF_TOKEN_NAME] ?? '')) { $current = $_POST['current_password']; $new = $_POST['new_password']; $confirm = $_POST['confirm_password']; $user = get_user_data(); if (!password_verify($current, $user['password'])) { set_flash('error', 'Current password is incorrect'); } elseif (strlen($new) < 6) { set_flash('error', 'New password must be at least 6 characters'); } elseif ($new !== $confirm) { set_flash('error', 'Passwords do not match'); } else { $hashed = password_hash($new, PASSWORD_DEFAULT); $stmt = $db->prepare("UPDATE users SET password = ? WHERE id = ?"); $stmt->execute([$hashed, $_SESSION['user_id']]); set_flash('success', 'Password changed successfully'); } header('Location: ' . SITE_URL . 'pages/change-password.php'); exit; } require_once '../includes/header.php'; require_once '../includes/navbar.php'; ?> <main> <section style="background: var(--light-marble); padding: 20px 0;"> <div class="container"> <nav aria-label="breadcrumb"> <ol class="breadcrumb mb-0"> <li class="breadcrumb-item"><a href="<?= SITE_URL ?>">Home</a></li> <li class="breadcrumb-item"><a href="<?= SITE_URL ?>pages/account.php">My Account</a></li> <li class="breadcrumb-item active">Change Password</li> </ol> </nav> </div> </section> <section style="padding: 60px 0;"> <div class="container"> <div class="row justify-content-center"> <div class="col-lg-6"> <?php display_flash(); ?> <div style="background: var(--white); border-radius: 16px; padding: 40px; box-shadow: var(--shadow-sm);"> <h2 style="font-size: 1.5rem; margin-bottom: 25px; font-family: var(--font-primary); font-weight: 600;">Change Password</h2> <form method="POST"> <?= csrf_field() ?> <div class="mb-3"> <label class="form-label">Current Password *</label> <input type="password" name="current_password" class="form-control" required style="border-radius: 25px; padding: 10px 20px;"> </div> <div class="mb-3"> <label class="form-label">New Password *</label> <input type="password" name="new_password" class="form-control" required minlength="6" style="border-radius: 25px; padding: 10px 20px;"> <small class="text-muted">Minimum 6 characters</small> </div> <div class="mb-4"> <label class="form-label">Confirm New Password *</label> <input type="password" name="confirm_password" class="form-control" required style="border-radius: 25px; padding: 10px 20px;"> </div> <button type="submit" class="btn-luxury w-100" style="justify-content: center;"> <i class="fas fa-lock"></i> Change Password </button> </form> </div> </div> </div> </div> </section> </main> <?php require_once '../includes/footer.php'; ?>
Save Changes
Cancel
Create New File
Create New Folder