Pulihkan Password
Masukan Nomor WhatApp Terdaftar
prepare("SELECT username FROM data_server WHERE whatsapp = :whatsapp");
$stmt->bindParam(':whatsapp', $nomor, PDO::PARAM_STR);
$stmt->execute();
$user = $stmt->fetch(PDO::FETCH_ASSOC);
if ($user) {
$_SESSION['data_forget'] = array("akunMaster", $nomor, $kodeRendom, '1', $user['username']);
$_SESSION['status_forget'] = "verif";
} else {
// Cek di tabel user_akses
$stmt = $pdo->prepare("SELECT username FROM user_akses WHERE nomor_whatsapp = :whatsapp");
$stmt->bindParam(':whatsapp', $nomor, PDO::PARAM_STR);
$stmt->execute();
$user1 = $stmt->fetch(PDO::FETCH_ASSOC);
if ($user1) {
$_SESSION['data_forget'] = array("akunUser", $nomor, $kodeRendom, '1', $user1['username']);
$_SESSION['status_forget'] = "verif";
} else {
sweetAlert("Nomor WhatsApp tidak terdaftar", "error");
session_destroy();
exit;
}
}
// Kirim pesan verifikasi
$Pesan = "*$randomCode* adalah kode verifikasi Anda. Demi keamanan, jangan bagikan kode ini.";
$Nomor = array($nomor);
$APIwa = new PesanWA();
$APIwa->Send_Pesan('1', 'sendMessage', $Nomor, $Pesan);
sweetAlert("Kode Verifikasi akan di kirim ke nomor anda", "success");
} catch (PDOException $e) {
// Tangani kesalahan
sweetAlert("Terjadi kesalahan saat Verifikasi: " . $e->getMessage(), "error");
}
}
if (isset($_POST['otp'])) {
if (password_verify($_POST['otp'], $_SESSION['data_forget'][2])) {
$_SESSION['status_forget'] = "newpassword";
sweetAlert("Verifikasi Berhasil..!", "success");
} else {
if ($_SESSION['data_forget'][3] < 2) {
sweetAlert("Masukan kode dengan benar", "error");
$_SESSION['data_forget'][3] = $_SESSION['data_forget'][3] + 1;
} else {
session_destroy();
sweetAlert("Verifikasi Gagal", "error");
}
}
}
if (isset($_POST['simpanPassword'])) {
if ($_POST['password'] == $_POST['confirm_password']) {
$hashedPassword = password_hash($_POST['password'], PASSWORD_DEFAULT);
$nomorWhatsapp = $_SESSION['data_forget'][1];
$username = $_SESSION['data_forget'][4];
try {
if($_SESSION['data_forget'][0] == 'akunMaster'){
$stmt = $pdo->prepare("UPDATE data_server SET password = :passwordNew WHERE whatsapp = :whatsapp AND username = :username");
$stmt->bindParam(':passwordNew', $hashedPassword, PDO::PARAM_STR);
$stmt->bindParam(':whatsapp', $nomorWhatsapp, PDO::PARAM_STR);
$stmt->bindParam(':username', $username, PDO::PARAM_STR);
$stmt->execute();
session_destroy();
sweetAlert("Password telah di ubah, Silahkan Login Kembali", "success", baseurl('../login'));
} else {
$stmt = $pdo->prepare("UPDATE user_akses SET password = :passwordNew WHERE nomor_whatsapp = :whatsapp AND username = :username");
$stmt->bindParam(':passwordNew', $hashedPassword, PDO::PARAM_STR);
$stmt->bindParam(':whatsapp', $nomorWhatsapp, PDO::PARAM_STR);
$stmt->bindParam(':username', $username, PDO::PARAM_STR);
$stmt->execute();
session_destroy();
sweetAlert("Password telah di ubah, Silahkan Login Kembali", "success", baseurl('../login'));
}
} catch (PDOException $e) {
sweetAlert("Terjadi kesalahan : " . $e->getMessage(), "error");
}
} else {
sweetAlert("Password tidak sesuai, mohon periksa kembali", "info");
}
}
?>