Revision 322
Added by stefan over 18 years ago
trunk/wb/account/forgot_form.php | ||
---|---|---|
40 | 40 |
$query = "SELECT user_id,username,display_name,email,last_reset,password FROM ".TABLE_PREFIX."users WHERE email = '".$wb->add_slashes($_POST['email'])."'"; |
41 | 41 |
$results = $database->query($query); |
42 | 42 |
if($results->numRows() > 0) { |
43 |
// Get the id, username, and email from the above db query |
|
43 |
|
|
44 |
// Get the id, username, email, and last_reset from the above db query |
|
44 | 45 |
$results_array = $results->fetchRow(); |
45 | 46 |
|
46 | 47 |
// Check if the password has been reset in the last 2 hours |
... | ... | |
54 | 55 |
|
55 | 56 |
} else { |
56 | 57 |
|
58 |
$old_pass = $results_array['password']; |
|
59 |
|
|
57 | 60 |
// Generate a random password then update the database with it |
58 | 61 |
$new_pass = ''; |
59 | 62 |
$salt = "abchefghjkmnpqrstuvwxyz0123456789"; |
... | ... | |
65 | 68 |
$new_pass = $new_pass . $tmp; |
66 | 69 |
$i++; |
67 | 70 |
} |
68 |
$old_pass = $results_array['password']; |
|
69 |
$database->query("UPDATE ".TABLE_PREFIX."users SET password = '".md5($new_pass)."' WHERE user_id = '".$results_array['user_id']."'"); |
|
71 |
$database->query("UPDATE ".TABLE_PREFIX."users SET password = '".md5($new_pass)."', last_reset = '".mktime()."' WHERE user_id = '".$results_array['user_id']."'"); |
|
70 | 72 |
|
71 | 73 |
if($database->is_error()) { |
72 | 74 |
// Error updating database |
... | ... | |
87 | 89 |
|
88 | 90 |
If you have received this message in error, please delete it immediatly.'; |
89 | 91 |
// Try sending the email |
90 |
if($wb->mail('',$mail_to,$mail_subject,$mail_message)) {
|
|
92 |
if($wb->mail('From: '.SERVER_EMAIL,$mail_to,$mail_subject,$mail_message)) {
|
|
91 | 93 |
$message = $MESSAGE['FORGOT_PASS']['PASSWORD_RESET']; |
92 | 94 |
$display_form = false; |
93 | 95 |
} else { |
94 |
$database->query("UPDATE ".TABLE_PREFIX."users SET password = '".$old_pass."' WHERE user_id = '".$results_array['user_id']."'");
|
|
96 |
$database->query("UPDATE ".TABLE_PREFIX."users SET password = '".$old_pass."' WHERE user_id = '".$results_array['user_id']."'"); |
|
95 | 97 |
$message = $MESSAGE['FORGOT_PASS']['CANNOT_EMAIL']; |
96 | 98 |
} |
97 | 99 |
} |
98 |
} |
|
100 |
|
|
101 |
} |
|
102 |
|
|
99 | 103 |
} else { |
100 | 104 |
// Email doesn't exist, so tell the user |
101 | 105 |
$message = $MESSAGE['FORGOT_PASS']['EMAIL_NOT_FOUND']; |
Also available in: Unified diff
Ticket #137 - Last Reset timer not reset in frontend forgotten password process