Page 1 of 5

Open Cart Administrator Password Reset tool

Posted: Tue Jun 08, 2010 8:39 am
by JAY6390
Want something similar in a vQmod? Check this thread out

After seeing a thread earlier asking how to reset their admin password I thought I'd create a little app that hopefully will be useful when people get stuck. It's taken from my Wordpress admin reset file I made a while back, with just a few tweaks to allow resetting OC passwords - It's actually taken me more time to write this post than to code it :D

Instructions for use
1. Either download the file here or copy the source code below and save it to a file called ocreset.php in your store's directory (The same one as the .htaccess/.htaccess.txt file)
2. Run the file through your browser by visiting your site's store address followed by ocreset.php, so for a localhost in a directory called shop it would be

Code: Select all

http://localhost/shop/ocreset.php
- for your domain in the root directory just use

Code: Select all

http://www.yoursite.com/ocreset.php
3. You should now see a screen with the following on it, and in the dropdown should be a list of your site administrators
Image
4. Select your administrator name you want to reset, type your password in the password field and click "Change Password"
5. If all went well a message should appear at the top of the screen with

Code: Select all

User `admin` updated successfully!
where admin is the name of the user you've just reset
6. Once you've reset your password MAKE SURE YOU DELETE THE OCRESET.PHP FILE from your server, to avoid anyone gaining unauthorised access to your store


For those interested, here's the source code with commenting. If anyone has any suggestions for improvement or bugs please let me know

Code: Select all

<?php
// Load config
include('config.php');

// Connect to database
mysql_connect(DB_HOSTNAME, DB_USERNAME, DB_PASSWORD) or die('ERROR CONNECTING TO SERVER');
mysql_select_db(DB_DATABASE) or die('ERROR SELECTING TABLE');

// Get list of active adminstrators
$query = "SELECT user_id, username FROM ".DB_PREFIX."user WHERE user_group_id = '1' AND status = '1'";
$result = mysql_query($query);
if(!$result) {
    echo 'ERROR WITH QUERY: '.mysql_error().'<br />';
    die($query);
}
while($r = mysql_fetch_assoc($result)) {
    $users[$r['user_id']] = $r['username'];
}

// Form has been submitted
if(isset($_POST['ID'])) {
    // Clean up password field and make sure it has a value
    $pass = trim($_POST['password']);
    if($pass == '') {
        $info = 'ERROR: Password needed in order to reset';
    }else{
        // Update the table with the new information
        $query = sprintf("UPDATE ".DB_PREFIX."user SET password = '%s' WHERE user_id = '%s'", md5($pass), mysql_real_escape_string($_POST['ID']));
        $result = mysql_query($query);
        if(!$result) {
            $info = 'Could not update the database<br />'.mysql_error();
        }else{
            $info = 'User `'.$users[$_POST['ID']].'` updated successfully!';
        }
    }
}
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Open Cart administrator password reset</title>
<style type="text/css">
<!--
body {font-family: Verdana, Arial, Helvetica, sans-serif; background: #438AB7; color: #ffffff; font-size: 10px;}
.lbl {display: block; text-align: center; width: 200px; font-weight: bold;}
.input {width: 200px;}
.info { border: 2px solid #2B5775; padding: 3px; font-size: 16px; font-weight: bold; text-align: center;}
-->
</style>
</head>

<body>
<?php
if(isset($info)) {
    echo "<div class=\"info\">$info</div>";
}
?>
<h1>Open Cart administrator password reset</h1>
<form id="frmReset" method="post" action="">
  <fieldset style="border: none;">
    <label for="ID" class="lbl">Administrator to reset: </label>
    <select name="ID" id="ID" class="input">
      <?php foreach($users as $id => $username): ?>
      <option value="<?php echo $id; ?>"><?php echo $username; ?></option>
      <?php endforeach; ?>
    </select>
    <label for="password" class="lbl">New password: </label>
    <input type="text" name="password" id="password" class="input" />
  <br />
  <br />
  <input class="lbl" type="submit" name="button" id="button" value="Change password"/>
  </fieldset>
</form>
</body>
</html>

Re: Open Cart Administrator Password Reset tool

Posted: Tue Jun 08, 2010 1:56 pm
by cmebd
%hanks for this - a brilliant "admin" helper........ ;)

Re: Open Cart Administrator Password Reset tool

Posted: Tue Jun 08, 2010 6:06 pm
by JAY6390
No problem :)

Re: Open Cart Administrator Password Reset tool

Posted: Wed Jun 09, 2010 1:20 am
by Moggin
Many thanks JAY6390. Great app, which will solve something very high up on my worry list..
Cheers

Re: Open Cart Administrator Password Reset tool

Posted: Wed Jun 09, 2010 3:10 am
by JAY6390
No problem. I will be adding more once 1.4.8 is released that will be useful for installing modules more easily (if everything goes to plan), and I have another idea or two up my sleeves yet :)

Re: Open Cart Administrator Password Reset tool

Posted: Sat Jul 03, 2010 4:22 am
by clairekw
THANK YOU!!!!!!!

YOU SAVED MY LIFE

I AM NOT TECHY BUT I COULD FOLLOW THE INSTRUCTIONS - OLISH YOUR HALO!!! ;) :D :)

Re: Open Cart Administrator Password Reset tool

Posted: Sat Jul 03, 2010 4:36 am
by JAY6390
haha no problem :)

Re: Open Cart Administrator Password Reset tool

Posted: Sat Jul 03, 2010 8:20 pm
by qahar
interesting stuff.. nice work..

Re: Open Cart Administrator Password Reset tool

Posted: Sun Jul 04, 2010 6:15 am
by JAY6390
No problem :) Glad it helped you!

Re: Open Cart Administrator Password Reset tool

Posted: Thu Nov 11, 2010 11:46 am
by JCO
Whooooooo! Thanks Jay ... I just used it!!!!!!!! ;D

Re: Open Cart Administrator Password Reset tool

Posted: Thu Nov 11, 2010 6:46 pm
by JAY6390
lol no problem

Re: Open Cart Administrator Password Reset tool

Posted: Mon Nov 22, 2010 9:23 am
by ilovekhym
Hello Guys,

I just created and submitted the script for this. You can check it here
http://www.opencart.com/index.php?route ... ion_id=879

I will upload a demo site for this later.

Re: Open Cart Administrator Password Reset tool

Posted: Mon Nov 22, 2010 10:28 am
by JAY6390
lol you didn't create a script fro this, you created a PAID module to allow people to reset their admin passwords from the admin login. big difference tbh

Re: Open Cart Administrator Password Reset tool

Posted: Tue Nov 23, 2010 9:08 am
by ilovekhym
@JAY6390 - Hello, Yes its paid and i decide to make it paid since its easy to use and is already attached to the admins interface and on the users database. you can visit the extension page and try it yourself. I already put a demo site and test account/email for that. anyway, thanks for the feedback. :)

Re: Open Cart Administrator Password Reset tool

Posted: Tue Nov 23, 2010 9:21 am
by JAY6390
It wasn't feedback, I was pointing out that you were spamming the forum. I'm well aware of the way the extension works and how, I just don't see how it's pertinent to this thread to be honest. Your extension is fine I'm sure, and should probably be part of the core

Re: Open Cart Administrator Password Reset tool

Posted: Tue Nov 23, 2010 3:12 pm
by FxMan
Very sweet tool Jay.
Thanks.

Re: Open Cart Administrator Password Reset tool

Posted: Tue Nov 23, 2010 7:29 pm
by JAY6390
No problem FxMan :)

Re: Open Cart Administrator Password Reset tool

Posted: Wed Nov 24, 2010 4:01 pm
by rebecca
Thanks!! You're a star!

Re: Open Cart Administrator Password Reset tool

Posted: Fri Dec 03, 2010 5:59 pm
by ilovekhym
@jay - im not spamming the forum cause i only post only on the topics that is related on my extension.

Re: Open Cart Administrator Password Reset tool

Posted: Wed Jan 19, 2011 3:55 am
by Meiershus
thank you so much. works perfectly:-) :banana: