Bismillah
Tulisan ini pengalaman gw karena lupa password di localhost (development) backdropCMS.
Berikut ini langkah Ribet, karena kalo ubah dari database langsung, tidak akan bekerja, ini dilakukan jika reset-password tidak berfungsi ya, langsung saja.
- Buat PHP Code
<?php
define('BACKDROP_ROOT', getcwd());
require_once BACKDROP_ROOT . '/core/includes/bootstrap.inc';
backdrop_bootstrap(BACKDROP_BOOTSTRAP_FULL);
require_once BACKDROP_ROOT . '/core/includes/password.inc';
if (isset($_GET['pass']) && !empty($_GET['pass'])) {
$newhash = user_hash_password($_GET['pass']);
}
else {
die('Retry with ?pass=PASSWORD set in the URL');
}
$updatepass = db_update('users')
->fields(array(
'pass' => $newhash,
// 'name' => 'admin',
//'mail' => '<a href="mailto:yourmail@example.com'">yourmail@example.com'</a>'
))
->condition('uid', '1', '=')
->execute();
print "Done. Please delete this file immediately!";
backdrop_exit();
?>
-
Upload di root backdropcms disimpan.
-
Akses Via web browser PHP Code yang sudah kitabuat.
- Buka Halaman http://localhost/website-backdrop/lupapassword.php?pass=passwordBaru
- Ganti passwordBaru dengan password yang henda diganti, pastikan kombinasi ya
- Jika sudah jangan lupa Hapus File lupapassword.php nyah.
Catatan: Bekerja di backdropcms 1.8 s.d 1.19
For Your Information (FYI)
Terkadang trick diatas tidak bisa, entah kenapa, akhirnya baca komentar dibawahnya, ada yang share, diantaranya:
- Set file settings.php ke 777 (jika linux), abaikan jika windows
- copy-paste baris $settings['hash_salt'] di file settings.php yang website berhasil ke website bermasalah.
- copy-paste password user 1, berhasil login yang terenkripsi di database ke database user 1 login bermasalah.
- Kosongkan table flood di website bermasalah tadi.
- Login dengan Password yang website berhasil tadi.
- Selesai.
Have a nice day!
source: