Viewing File: /home/quiczmwg/bitmaven.org/reset-password.php
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
require_once('_db.php');
session_start();
if ($_SERVER["REQUEST_METHOD"] == "POST") {
$reset_token = $_POST['reset_token'];
$new_password = $_POST['new_password'];
$confirm_password = $_POST['confirm_password'];
if (empty($reset_token) || empty($new_password) || empty($confirm_password)) {
$_SESSION['message'] = '<div class="alert alert-warning" role="alert">
<strong>Fail!</strong>
<p>All fields are required.</p>
</div>';
header("Location: reset-password.php?token=$reset_token");
exit();
}
if ($new_password !== $confirm_password) {
$_SESSION['message'] = '<div class="alert alert-danger" role="alert">
<strong>Fail!</strong>
<p>Passwords do not match.</p>
</div>';
header("Location: reset-password.php?token=$reset_token");
exit();
}
$hashed_password = password_hash($new_password, PASSWORD_DEFAULT);
$stmt = $conn->prepare("SELECT userid FROM password_resets WHERE reset_token = ? AND expiry > NOW()");
$stmt->bind_param("s", $reset_token);
$stmt->execute();
$result = $stmt->get_result();
if ($result->num_rows > 0) {
$row = $result->fetch_assoc();
$userid = $row['userid'];
$updatePassword = $conn->prepare("UPDATE user_login SET password = ? WHERE userid = ?");
$updatePassword->bind_param("ss", $hashed_password, $userid);
$updatePassword->execute();
$deleteToken = $conn->prepare("DELETE FROM password_resets WHERE userid = ?");
$deleteToken->bind_param("s", $userid);
$deleteToken->execute();
$_SESSION['message'] = '<div class="alert alert-success" role="alert">
<strong>Success!</strong>
<p>Your password has been reset. You can now log in.</p>
</div>';
header("Location: login.php");
exit();
} else {
$_SESSION['message'] = '<div class="alert alert-danger" role="alert">
<strong>Fail!</strong>
<p>Invalid or expired token.</p>
</div>';
header("Location: reset-password.php?token=$reset_token");
exit();
}
}
?>
<!DOCTYPE html>
<html lang="ru">
<head>
<meta charset="UTF-8">
<title>Bitmaven</title>
<meta content="width=1200" name="viewport">
<meta name="format-detection" content="telephone=no">
<link rel="shortcut icon" href="favicon.ico" type="image/x-icon">
<link rel="icon" href="favicon.ico" type="image/x-icon">
<link rel="stylesheet" type="text/css" href="fonts/icomoon/style.css">
<link rel="stylesheet" type="text/css" href="fonts/stylesheet.css">
<link rel="stylesheet" type="text/css" href="css/jquery-ui.min.css">
<link rel="stylesheet" type="text/css" href="css/selectric.css">
<link rel="stylesheet" type="text/css" href="css/owl.carousel.min.css">
<link rel="stylesheet" type="text/css" href="css/animate.css">
<link rel="stylesheet" type="text/css" href="css/style.css">
<link rel="stylesheet" type="text/css" href="css/responsive.css">
<!-- Include SweetAlert CSS and JS via CDN -->
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/sweetalert2@10.16.3/dist/sweetalert2.min.css">
<script src="https://cdn.jsdelivr.net/npm/sweetalert2@10.16.3/dist/sweetalert2.all.min.js"></script>
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/limonte-sweetalert2/7.2.0/sweetalert2.min.css">
<script src="https://cdnjs.cloudflare.com/ajax/libs/limonte-sweetalert2/7.2.0/sweetalert2.all.min.js"></script>
<script type="text/javascript" src="js/jquery-3.3.1.min.js"></script>
<script type="text/javascript" src="js/detect.min.js"></script>
<script type="text/javascript" src="js/jquery-ui.min.js"></script>
<script type="text/javascript" src="js/jquery.selectric.min.js"></script>
<script type="text/javascript" src="js/owl.carousel.min.js"></script>
<script type="text/javascript" src="js/clipboard.min.js"></script>
<script type="text/javascript" src="js/wow.min.js"></script>
<script type="text/javascript" src="js/clock.js"></script>
<script type="text/javascript" src="js/modal.js"></script>
<script type="text/javascript" src="ajax/libs/gsap/1.20.2/TweenMax.min.js"></script>
<script type="text/javascript" src="s.cdpn.io/16327/GSDevTools.min.js"></script>
<script type="text/javascript" src="js/volna.js"></script>
<script type="text/javascript" src="js/jquery.parallax.js"></script>
<script type="text/javascript" src="ajax/libs/three.js/110/three.min.js"></script>
<script type="text/javascript" src="js/volns.js"></script>
<script type="text/javascript" src="js/script.js"></script>
<script src="widget/jaS5xGD7Od" async=""></script>
</head>
<body>
<section class="wrapper">
<header class="headerPage"> <div class="container">
<div class="wrapIn">
<button class="menuBtn">
<span></span>
<span></span>
<span></span>
<span></span>
</button>
<div class="lineTop">
<div class="logo invsiLink">
<a href="index.php?a=home"></a>
<img src="img/logo.png" alt="">
<div class="text">
<span class="txt">Bitmaven</span>
</div>
</div>
<div class="infoLine">
<div class="top">
<div class="socialBl">
<ul>
<li><a href="#"><span class="iconBl icon-telegram"></span></a></li>
<li><a href="#"><span class="iconBl icon-facebook"></span></a></li>
</ul>
</div>
<div class="timeBlock">
<span class="iconBl icon-clock-29"></span>
<span id="date"></span>
<span id="time"></span>
</div>
<div class="linksBlock">
<ul>
<li>
<span class="tit">E-mail: </span>
<a href="mailto:bitmaven@gmail.com" class="mail">bitmaven@gmail.com</a>
</li>
</ul>
</div>
<div class="logBlock">
<a href="signin.php?a=signup" class="reg">Sign up</a>
<a href="login.php?a=login" class="log">login</a>
</div>
</div>
<div class="menu">
<ul>
<li><a href="index-1.htm?a=home">Home</a></li>
<li><a href="index-4.htm?a=cust&page=about">About us</a></li>
<li><a href="index-5.htm?a=faq">Faq</a></li>
<li><a href="index-6.htm?a=rules">Rules</a></li>
<li><a href="index-7.htm?a=swap">Swap Coins</a></li>
<li><a href="index-8.htm?a=support">Contact us</a></li>
</ul>
</div>
</div>
</div>
<div class="greetingsPage">
<h1 class="cap"></h1>
</div>
</div>
</div>
</header>
<div class="content">
<script language="javascript">
function checkform() {
if (document.mainform.username.value=='') {
alert("Please type your username!");
document.mainform.username.focus();
return false;
}
if (document.mainform.password.value=='') {
alert("Please type your password!");
document.mainform.password.focus();
return false;
}
return true;
}
</script>
<div class="formaLog">
<h2 class="cap">Reset Password</h2>
<form id="form1" class="form-group flex-wrap" method="POST" action="reset-password.php">
<input type="hidden" name="reset_token" value="<?php echo htmlspecialchars($_GET['token']); ?>">
<div class="listInputs">
<div class="inputLine">
<label for="">New Password<span class="imp">*</span>:</label>
<input type="password" name="new_password" value='' autofocus="autofocus">
</div>
<div class="inputLine">
<label for="">Confirm Password<span class="imp">*</span>:</label>
<input type="password" name="confirm_password" value=''>
</div>
</div>
<button type="submit" class="btn btnGreen">Reset Password</button>
</form>
</div>
</div>
<?php
include 'footer.php';
?>
Back to Directory
File Manager
<