Tos Web Developer provides insights, tutorials, and advice around topics including content strategy, design, Drupal Development, Drupal Custom Module Development, Drupal 8 Custom themes, PHP, Server, Twig, and more



There are many methods to recover admin password described here https://www.drupal.org/node/44164 but this method gives you an admin panel to recover admin username and password.

Please copy and paste the below code in a file and name it whatever you like or download the attachment in this post, remove .txt extension and drop it in the root of your website[in the same place where you find robots.txt]. In my case i named it as "generate_drupal_admin_pwd.php".

and then access your website like http://YOUR_WEBSITE_NAME/generate_drupal_admin_pwd.php

Warning: Putting .php files in root directory has many security concerns, its recommended after changing the password you should delete the file.

 <html>  
 <head>  
 <title>Recover Password</title>  
 <script src="https://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.11.3.min.js"></script>  
 <script type="text/javascript">  
 function checkPasswordMatch() {  
   var password = $("#txtNewPassword").val();  
   var confirmPassword = $("#txtConfirmPassword").val();  
   if(password != '' && confirmPassword != '') {  
     if (password != confirmPassword)  
         $("#divCheckPasswordMatch").html("<div class='pass_dont_match'>Passwords do not match!</div>");  
     else  
         $("#divCheckPasswordMatch").html("<div class='pass_match'>Passwords match.</div>");  
   }  
 }  
 $(document).ready(function () {  
   $("#txtConfirmPassword").focusout(checkPasswordMatch);  
 });  
 </script>  
 <style>  
 html { height: 100% }  
 ::-moz-selection { background: #fe57a1; color: #fff; text-shadow: none; }  
 ::selection { background: #fe57a1; color: #fff; text-shadow: none; }  
 body { background-image: radial-gradient( cover, rgba(92,100,111,1) 0%,rgba(31,35,40,1) 100%), url('http://i.minus.com/io97fW9I0NqJq.png') }  
 .login {  
  background: #eceeee;  
  border: 1px solid #42464b;  
  border-radius: 6px;  
  height: 330px;  
  margin: 20px auto 0;  
  width: 298px;  
  margin-top: 50px;  
 }  
 .login h1 {  
  background-image: linear-gradient(top, #f1f3f3, #d4dae0);  
  border-bottom: 1px solid #a6abaf;  
  border-radius: 6px 6px 0 0;  
  box-sizing: border-box;  
  color: #727678;  
  display: block;  
  height: 43px;  
  font: 600 14px/1 'Open Sans', sans-serif;  
  padding-top: 14px;  
  margin: 0;  
  text-align: center;  
  text-shadow: 0 -1px 0 rgba(0,0,0,0.2), 0 1px 0 #fff;  
 }  
 input[type="password"], input[type="text"] {  
  background: url('http://i.minus.com/ibhqW9Buanohx2.png') center left no-repeat, linear-gradient(top, #d6d7d7, #dee0e0);  
  border: 1px solid #a1a3a3;  
  border-radius: 4px;  
  box-shadow: 0 1px #fff;  
  box-sizing: border-box;  
  color: #696969;  
  height: 39px;  
  margin: 9px 0 9px 29px;  
  padding-left: 37px;  
  transition: box-shadow 0.3s;  
  width: 240px;  
 }  
 .admin_username{  
   padding-left: 33px;  
 }  
 form{  
  margin-top: 53px;  
 }  
 input[type="password"]:focus, input[type="text"]:focus {  
  box-shadow: 0 0 4px 1px rgba(55, 166, 155, 0.3);  
  outline: 0;  
 }  
 .show-password {  
  display: block;  
  height: 16px;  
  margin: 26px 0 0 28px;  
  width: 87px;  
 }  
 input[type="checkbox"] {  
  cursor: pointer;  
  height: 16px;  
  opacity: 0;  
  position: relative;  
  width: 64px;  
 }  
 input[type="checkbox"]:checked {  
  left: 29px;  
  width: 58px;  
 }  
 .toggle {  
  background: url(http://i.minus.com/ibitS19pe8PVX6.png) no-repeat;  
  display: block;  
  height: 16px;  
  margin-top: -20px;  
  width: 87px;  
  z-index: -1;  
 }  
 input[type="checkbox"]:checked + .toggle { background-position: 0 -16px }  
 .forgot {  
  color: #7f7f7f;  
  display: inline-block;  
  float: right;  
  font: 12px/1 sans-serif;  
  left: -19px;  
  position: relative;  
  text-decoration: none;  
  top: 5px;  
  transition: color .4s;  
 }  
 .forgot:hover { color: #3b3b3b }  
 input[type="submit"] {  
  width:240px;  
  height:35px;  
  display:block;  
  font-family:Arial, "Helvetica", sans-serif;  
  font-size:16px;  
  font-weight:bold;  
  color:#fff;  
  text-decoration:none;  
  text-transform:uppercase;  
  text-align:center;  
  text-shadow:1px 1px 0px #37a69b;  
  padding-top:6px;  
  margin: 29px 0 0 29px;  
  position:relative;  
  cursor:pointer;  
  border: none;  
  background-color: #37a69b;  
  background-image: linear-gradient(top,#3db0a6,#3111);  
  border-top-left-radius: 5px;  
  border-top-right-radius: 5px;  
  border-bottom-right-radius: 5px;  
  border-bottom-left-radius:5px;  
  box-shadow: inset 0px 1px 0px #2ab7ec, 0px 5px 0px 0px #497a78, 0px 10px 5px #999;  
 }  
 .shadow {  
  background: #000;  
  border-radius: 12px 12px 4px 4px;  
  box-shadow: 0 0 20px 10px #000;  
  height: 12px;  
  margin: 30px auto;  
  opacity: 0.2;  
  width: 270px;  
 }  
 input[type="submit"]:active {  
  top:3px;  
  box-shadow: inset 0px 1px 0px #2ab7ec, 0px 2px 0px 0px #31524d, 0px 5px 3px #999;  
 }  
 .pass_match {  
  padding-left: 96px;  
  padding-top: 8px;  
  color: darkgreen;  
 }  
 .pass_dont_match {  
  padding-left: 65px;  
  padding-top: 8px;  
  color: red;  
 }  
 .pass_changed {  
  margin-left: 777px;  
  color: green;  
 }  
 .mainloginarea {  
 margin-top: 250px;  
 }  
 </style>  
   </HEAD>  
   <BODY>  
 <?php  
  define('DRUPAL_ROOT', getcwd()); //the most important line  
  require_once './includes/bootstrap.inc';  
  drupal_bootstrap(DRUPAL_BOOTSTRAP_FULL);  
  require_once DRUPAL_ROOT . '/includes/password.inc';  
 $admin_name = db_query("SELECT name from {users} WHERE uid = :uid", array(":uid" => 1))->fetchField();  
 if((!empty($_POST['txtNewPassword'])) && (!empty($_POST['txtConfirmPassword']))) {  
     if($_POST['txtNewPassword'] === $_POST['txtConfirmPassword']) {  
         $newpwd = $_POST['txtNewPassword'];  
         global $base_url;  
         $hashed_pass = user_hash_password($newpwd);  
         $updated = db_update('users') // Table name no longer needs {}  
         ->fields(array(  
             'pass' => $hashed_pass,  
         ))  
         ->condition('uid', 1, '=')  
         ->execute();  
         watchdog('drupal_admin_pass_change',  
              'Admin password changed',  
              WATCHDOG_NOTICE);                  
 }  
 }  
 ?>  
 <div class = "mainloginarea">  
 <h1 align = "center">Drupal Admin Password Changer</h1>  
    <div class="login">  
       <form method = "POST" action="<?php echo $_SERVER['PHP_SELF']; ?>">  
     <div class = "admin_username"> Admin Username:<b><?php echo $admin_name ?></b></div><br />  
     <input placeholder= "Enter Password" name="txtNewPassword" type="password" id="txtNewPassword">  
     <input placeholder = "Re-Enter Password" name="txtConfirmPassword" type="password" id="txtConfirmPassword">  
         <div class="registrationFormAlert" id="divCheckPasswordMatch">  
     </div>  
     <input type="submit" value="Submit">  
     </form>  
 </div>  
 <div class="shadow"></div>  
 </div>  
 <?php if($updated) print "<div class=pass_changed>Thank You! Password Changed. <a href= $base_url/user>Click Here<a/> to login</div>"; ?>  
Download File: https://www.dropbox.com/s/ppl2t6uvjzrtzna/generate_drupal_admin_pwd.php?dl=0

Thanks for following TOsTech

Like our Facebook page
https://goo.gl/2kaXBc

Subscribe us on YouTube and help us growing
https://goo.gl/BQuUy3

Follow on Instagram account
https://goo.gl/LVWUQ5

Also, Read And Follow our Blog
https://goo.gl/55WrBR

Follow on LinkedIn -
https://goo.gl/tXXfAy

Thank u and keep supporting👍

- TOsTech team

Stay Connected Stay Techy

TOsTech Team

No comments:

Post a Comment

| Designed And Blog Post by www.toswebdeveloper.com